Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android
[firefly-linux-kernel-4.4.55.git] / drivers / cpuidle / cpuidle.c
index 17a6dc0e211110f00ac2e73728414f161d5a194f..d40b2c077746395c5cbc98e6d79b3267a0a42d7c 100644 (file)
@@ -214,7 +214,7 @@ int cpuidle_enter_state(struct cpuidle_device *dev, struct cpuidle_driver *drv,
                tick_broadcast_exit();
        }
 
-       if (!cpuidle_state_is_coupled(drv, entered_state))
+       if (!cpuidle_state_is_coupled(drv, index))
                local_irq_enable();
 
        diff = ktime_to_us(ktime_sub(time_end, time_start));
@@ -433,6 +433,8 @@ static void __cpuidle_unregister_device(struct cpuidle_device *dev)
        list_del(&dev->device_list);
        per_cpu(cpuidle_devices, dev->cpu) = NULL;
        module_put(drv->owner);
+
+       dev->registered = 0;
 }
 
 static void __cpuidle_device_init(struct cpuidle_device *dev)