Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1375089 > unrolled thread

[PATCH 4.4 204/210] PM / sleep: Clear pm_suspend_global_flags upon hibernate

Started byGreg Kroah-Hartman <gregkh@linuxfoundation.org>
First post2016-04-10 21:50 +0200
Last post2016-04-10 21:50 +0200
Articles 1 — 1 participant

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 4.4 204/210] PM / sleep: Clear pm_suspend_global_flags upon hibernate Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-04-10 21:50 +0200

#1375089 — [PATCH 4.4 204/210] PM / sleep: Clear pm_suspend_global_flags upon hibernate

FromGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Date2016-04-10 21:50 +0200
Subject[PATCH 4.4 204/210] PM / sleep: Clear pm_suspend_global_flags upon hibernate
Message-ID<rmtwT-1B9-31@gated-at.bofh.it>
4.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Lukas Wunner <lukas@wunner.de>

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 |    1 +
 1 file changed, 1 insertion(+)

--- a/kernel/power/hibernate.c
+++ b/kernel/power/hibernate.c
@@ -339,6 +339,7 @@ int hibernation_snapshot(int platform_mo
 	pm_message_t msg;
 	int error;
 
+	pm_suspend_clear_flags();
 	error = platform_begin(platform_mode);
 	if (error)
 		goto Close;

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web