On Wed, 2011-12-14 at 18:58 +0800, Sergei Shtylyov wrote:
Hello.
On 14-12-2011 7:17, Lin Ming wrote:
quoted
Commit af8db15 disabled device's runtime PM during shutdown.
Please also specify that commit's summary in parens.
OK. Here it is.
From 7e3dcebe235d005126c03a3976bca859691110bc Mon Sep 17 00:00:00 2001
From: Lin Ming <redacted>
Date: Wed, 14 Dec 2011 10:14:21 +0800
Subject: [PATCH 1/3] [SCSI] sd: fix runtime status check in sd_shutdown
Commit af8db15(PM / driver core: disable device's runtime PM during
shutdown) makes pm_runtime_suspended(dev) always return false.
So sd's runtime status can't be checked with pm_runtime_suspended(dev)
any more.
Fix it by checking runtime status with pm_runtime_status_suspended(dev).
Signed-off-by: Lin Ming <redacted>
---
drivers/scsi/sd.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
index 7b3f807..284b087 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
@@ -2742,7 +2742,12 @@ static void sd_shutdown(struct device *dev)
if (!sdkp)
return; /* this can happen */
- if (pm_runtime_suspended(dev))
+ /*
+ * Check runtime status with pm_runtime_status_suspended(dev)
+ * instead of pm_runtime_suspended(dev),
+ * because device_shutdown() has disabled the device's runtime PM.
+ */
+ if (pm_runtime_status_suspended(dev))
goto exit;
if (sdkp->WCE) {--
1.7.2.5