aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/idle/intel_idle.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/idle/intel_idle.c b/drivers/idle/intel_idle.c
index 8420ba10a434..862346bd053a 100644
--- a/drivers/idle/intel_idle.c
+++ b/drivers/idle/intel_idle.c
@@ -1245,12 +1245,19 @@ static int __init intel_idle_init(void)
1245 1245
1246static void __exit intel_idle_exit(void) 1246static void __exit intel_idle_exit(void)
1247{ 1247{
1248 struct cpuidle_device *dev;
1249 int i;
1250
1248 cpu_notifier_register_begin(); 1251 cpu_notifier_register_begin();
1249 1252
1250 if (lapic_timer_reliable_states != LAPIC_TIMER_ALWAYS_RELIABLE) 1253 if (lapic_timer_reliable_states != LAPIC_TIMER_ALWAYS_RELIABLE)
1251 on_each_cpu(__setup_broadcast_timer, (void *)false, 1); 1254 on_each_cpu(__setup_broadcast_timer, (void *)false, 1);
1252 __unregister_cpu_notifier(&cpu_hotplug_notifier); 1255 __unregister_cpu_notifier(&cpu_hotplug_notifier);
1253 intel_idle_cpuidle_devices_uninit(); 1256
1257 for_each_possible_cpu(i) {
1258 dev = per_cpu_ptr(intel_idle_cpuidle_devices, i);
1259 cpuidle_unregister_device(dev);
1260 }
1254 1261
1255 cpu_notifier_register_done(); 1262 cpu_notifier_register_done();
1256 1263