OpenCloudOS-Kernel/kernel/power
Rafael J. Wysocki f3f125324f PM / suspend: Make cpuidle work in the "freeze" state
The "freeze" system sleep state introduced by commit 7e73c5ae6e
(PM: Introduce suspend state PM_SUSPEND_FREEZE) requires cpuidle
to be functional when freeze_enter() is executed to work correctly
(that is, to be able to save any more energy than runtime idle),
but that is impossible after commit 8651f97bd9 (PM / cpuidle:
System resume hang fix with cpuidle) which caused cpuidle to be
paused in dpm_suspend_noirq() and resumed in dpm_resume_noirq().

To avoid that problem, add cpuidle_resume() and cpuidle_pause()
to the beginning and the end of freeze_enter(), respectively.

Reported-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Preeti U Murthy <preeti@linux.vnet.ibm.com>
2014-04-21 23:39:59 +02:00
..
Kconfig PM / Sleep: Detect device suspend/resume lockup and log event 2013-10-18 13:33:08 +02:00
Makefile PM / Sleep: Add user space interface for manipulating wakeup sources, v3 2012-05-01 21:26:05 +02:00
autosleep.c PM / Sleep: avoid 'autosleep' in shutdown progress 2013-07-15 01:31:37 +02:00
block_io.c block: Abstract out bvec iterator 2013-11-23 22:33:47 -08:00
console.c arm, pm, vmpressure: add missing slab.h includes 2014-02-03 13:24:01 -05:00
hibernate.c PM / hibernate: use name_to_dev_t to parse resume 2014-03-01 01:02:52 +01:00
main.c PM: Add missing "freeze" state 2014-03-12 00:54:53 +01:00
power.h kernel: use macros from compiler.h instead of __attribute__((...)) 2014-04-07 16:36:11 -07:00
poweroff.c power/sysrq: fix inconstistent help message of sysrq key 2013-04-30 17:04:10 -07:00
process.c freezer: set PF_SUSPEND_TASK flag on tasks that call freeze_processes 2013-07-30 14:05:06 +02:00
qos.c PM / QoS: Introcuce latency tolerance device PM QoS type 2014-02-11 00:35:38 +01:00
snapshot.c kernel: use macros from compiler.h instead of __attribute__((...)) 2014-04-07 16:36:11 -07:00
suspend.c PM / suspend: Make cpuidle work in the "freeze" state 2014-04-21 23:39:59 +02:00
suspend_test.c driver-core: constify data for class_find_device() 2013-02-06 12:18:56 -08:00
swap.c kernel: use macros from compiler.h instead of __attribute__((...)) 2014-04-07 16:36:11 -07:00
user.c Merge branch 'pm-sleep' 2013-11-19 01:07:08 +01:00
wakelock.c PM / wakeup: Include appropriate header file in kernel/power/wakelock.c 2014-03-01 01:02:09 +01:00