Resume from RAM on HPC nx6325 broken
generic_ide_resume() should check if dev->driver is not NULL before applying to_ide_driver() to it. Fix that. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
parent
d09c6b8094
commit
ce9b2b0abb
|
@ -1010,7 +1010,6 @@ static int generic_ide_resume(struct device *dev)
|
||||||
{
|
{
|
||||||
ide_drive_t *drive = dev->driver_data;
|
ide_drive_t *drive = dev->driver_data;
|
||||||
ide_hwif_t *hwif = HWIF(drive);
|
ide_hwif_t *hwif = HWIF(drive);
|
||||||
ide_driver_t *drv = to_ide_driver(dev->driver);
|
|
||||||
struct request rq;
|
struct request rq;
|
||||||
struct request_pm_state rqpm;
|
struct request_pm_state rqpm;
|
||||||
ide_task_t args;
|
ide_task_t args;
|
||||||
|
@ -1033,8 +1032,12 @@ static int generic_ide_resume(struct device *dev)
|
||||||
|
|
||||||
err = ide_do_drive_cmd(drive, &rq, ide_head_wait);
|
err = ide_do_drive_cmd(drive, &rq, ide_head_wait);
|
||||||
|
|
||||||
if (err == 0 && drv && drv->resume)
|
if (err == 0 && dev->driver) {
|
||||||
drv->resume(drive);
|
ide_driver_t *drv = to_ide_driver(dev->driver);
|
||||||
|
|
||||||
|
if (drv->resume)
|
||||||
|
drv->resume(drive);
|
||||||
|
}
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue