mirror of
https://github.com/torvalds/linux.git
synced 2024-12-05 18:41:23 +00:00
scsi: smartpqi: Correct system hangs when resuming from hibernation
Correct system hangs when resuming from hibernation after first successful hibernation/resume cycle. Rare condition involving OFA. Note: Suspend/resume is not supported on many platforms. It was originally intended for workstations. Link: https://lore.kernel.org/r/161549386295.25025.14555840632114761610.stgit@brunhilda Reviewed-by: Scott Benesh <scott.benesh@microchip.com> Reviewed-by: Scott Teel <scott.teel@microchip.com> Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com> Signed-off-by: Don Brace <don.brace@microchip.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
d0cba99fd7
commit
43e97ef482
@ -8651,14 +8651,21 @@ static __maybe_unused int pqi_resume(struct pci_dev *pci_dev)
|
||||
pci_dev->irq, rc);
|
||||
return rc;
|
||||
}
|
||||
pqi_ctrl_unblock_device_reset(ctrl_info);
|
||||
pqi_ctrl_unblock_requests(ctrl_info);
|
||||
pqi_scsi_unblock_requests(ctrl_info);
|
||||
pqi_ctrl_unblock_scan(ctrl_info);
|
||||
return 0;
|
||||
}
|
||||
|
||||
pci_set_power_state(pci_dev, PCI_D0);
|
||||
pci_restore_state(pci_dev);
|
||||
|
||||
pqi_ctrl_unblock_device_reset(ctrl_info);
|
||||
pqi_ctrl_unblock_requests(ctrl_info);
|
||||
pqi_scsi_unblock_requests(ctrl_info);
|
||||
pqi_ctrl_unblock_scan(ctrl_info);
|
||||
|
||||
return pqi_ctrl_init_resume(ctrl_info);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user