]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
PM / sleep: Clear pm_suspend_global_flags upon hibernate
authorLukas Wunner <lukas@wunner.de>
Tue, 22 Mar 2016 23:11:20 +0000 (00:11 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 12 Apr 2016 16:09:05 +0000 (09:09 -0700)
commit4cd4ebbdf533ed316ce377b66ae508cc6d1d0162
tree96a65469d13c3be36cc53e8eb1fa31096ce0212a
parent79d05ce04bfbe9885936ed985c2dd53d8500f617
PM / sleep: Clear pm_suspend_global_flags upon hibernate

commit 276142730c39c9839465a36a90e5674a8c34e839 upstream.

When suspending to RAM, waking up and later suspending to disk,
we gratuitously runtime resume devices after the thaw phase.
This does not occur if we always suspend to RAM or always to disk.

pm_complete_with_resume_check(), which gets called from
pci_pm_complete() among others, schedules a runtime resume
if PM_SUSPEND_FLAG_FW_RESUME is set. The flag is set during
a suspend-to-RAM cycle. It is cleared at the beginning of
the suspend-to-RAM cycle but not afterwards and it is not
cleared during a suspend-to-disk cycle at all. Fix it.

Fixes: ef25ba047601 (PM / sleep: Add flags to indicate platform firmware involvement)
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/power/hibernate.c