[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <87txvwgtkx.fsf@tucsk.pomaz.szeredi.hu>
Date: Tue, 21 Aug 2012 17:20:30 +0200
From: Miklos Szeredi <miklos@...redi.hu>
To: davem@...emloft.net
CC: rjw@...k.pl, stern@...land.harvard.edu, hdegoede@...hat.com,
linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
linux-ide@...r.kernel.org
Subject: [PATCH] ide: fix generic_ide_suspend/resume Oops
From: Miklos Szeredi <mszeredi@...e.cz>
This patch fixes a regresion introduced by commit 0998d063 (device-core: Ensure
drvdata = NULL when no driver is bound).
Suspend oopses in generic_ide_suspend() because dev_get_drvdata()
returns NULL (dev->p->driver_data == NULL) and this function is not
prepared for this.
Fix is based on Alan Stern's suggestion.
Signed-off-by: Miklos Szeredi <mszeredi@...e.cz>
Acked-by: Rafael J. Wysocki <rjw@...k.pl>
---
drivers/ide/ide-pm.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/ide/ide-pm.c b/drivers/ide/ide-pm.c
index 9240609..8d1e32d 100644
--- a/drivers/ide/ide-pm.c
+++ b/drivers/ide/ide-pm.c
@@ -4,7 +4,7 @@
int generic_ide_suspend(struct device *dev, pm_message_t mesg)
{
- ide_drive_t *drive = dev_get_drvdata(dev);
+ ide_drive_t *drive = to_ide_device(dev);
ide_drive_t *pair = ide_get_pair_dev(drive);
ide_hwif_t *hwif = drive->hwif;
struct request *rq;
@@ -40,7 +40,7 @@ int generic_ide_suspend(struct device *dev, pm_message_t mesg)
int generic_ide_resume(struct device *dev)
{
- ide_drive_t *drive = dev_get_drvdata(dev);
+ ide_drive_t *drive = to_ide_device(dev);
ide_drive_t *pair = ide_get_pair_dev(drive);
ide_hwif_t *hwif = drive->hwif;
struct request *rq;
--
1.7.7
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists