Skip to content

Commit

Permalink
ide: fix generic_ide_suspend/resume Oops
Browse files Browse the repository at this point in the history
This patch fixes a regresion introduced by commit 0998d06 (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 <[email protected]>
Acked-by: Rafael J. Wysocki <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
Miklos Szeredi authored and davem330 committed Aug 21, 2012
1 parent 1456c75 commit 9974e43
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/ide/ide-pm.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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;
Expand Down

0 comments on commit 9974e43

Please sign in to comment.