From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: pm list <linux-pm@lists.linux-foundation.org>
Cc: Alan Stern <stern@rowland.harvard.edu>,
Linus Torvalds <torvalds@linux-foundation.org>,
LKML <linux-kernel@vger.kernel.org>,
Arjan van de Ven <arjan@infradead.org>
Subject: [PATCH 3/5] PM: Use pm_runtime_put_sync in system resume
Date: Mon, 21 Dec 2009 22:05:12 +0100 [thread overview]
Message-ID: <200912212205.12343.rjw@sisk.pl> (raw)
In-Reply-To: <200912212201.47920.rjw@sisk.pl>
From: Alan Stern <stern@rowland.harvard.edu>
This patch (as1317) fixes a bug in the PM core. When a device is
resumed following a system sleep, the core decrements the device's
runtime PM usage counter but doesn't issue an idle notification if the
counter reaches 0. This could prevent an otherwise unused device from
being runtime-suspended again after the system sleep.
The fix is to call pm_runtime_put_sync() instead of
pm_runtime_put_noidle().
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
---
drivers/base/power/main.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Index: linux-2.6/drivers/base/power/main.c
===================================================================
--- linux-2.6.orig/drivers/base/power/main.c
+++ linux-2.6/drivers/base/power/main.c
@@ -607,7 +607,7 @@ static void dpm_complete(pm_message_t st
mutex_unlock(&dpm_list_mtx);
device_complete(dev, state);
- pm_runtime_put_noidle(dev);
+ pm_runtime_put_sync(dev);
mutex_lock(&dpm_list_mtx);
}
@@ -880,7 +880,7 @@ static int dpm_prepare(pm_message_t stat
pm_runtime_get_noresume(dev);
if (pm_runtime_barrier(dev) && device_may_wakeup(dev)) {
/* Wake-up requested during system sleep transition. */
- pm_runtime_put_noidle(dev);
+ pm_runtime_put_sync(dev);
error = -EBUSY;
} else {
error = device_prepare(dev, state);
next prev parent reply other threads:[~2009-12-21 21:07 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-21 21:01 [PATCH 0/5] PM patches for the next pull request Rafael J. Wysocki
2009-12-21 21:03 ` [PATCH 1/5] PM: Make the initcall_debug style timing for suspend/resume complete Rafael J. Wysocki
2009-12-21 21:15 ` Alan Stern
2009-12-21 22:40 ` Rafael J. Wysocki
2009-12-21 21:04 ` [PATCH 2/5] PM: Measure device suspend and resume times Rafael J. Wysocki
2009-12-21 21:05 ` Rafael J. Wysocki [this message]
2009-12-21 21:06 ` [PATCH 4/5] PM / Runtime: Use device type and device class callbacks Rafael J. Wysocki
2009-12-21 21:06 ` [PATCH 5/5] PM: Runtime PM documentation update Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200912212205.12343.rjw@sisk.pl \
--to=rjw@sisk.pl \
--cc=arjan@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=stern@rowland.harvard.edu \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®