[PATCH 1/3] [SCSI] sd: fix runtime status check in sd_shutdown

From: Lin Ming
Date: Tue Dec 13 2011 - 21:14:21 EST


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 <ming.m.lin@xxxxxxxxx>
---
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



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/