| From af61e27c3f77c7623b5335590ae24b6a5c323e22 Mon Sep 17 00:00:00 2001 |
| From: Tyler Stachecki <tstache1@binghamton.edu> |
| Date: Fri, 25 Apr 2014 16:41:04 -0400 |
| Subject: [SCSI] mpt2sas: Don't disable device twice at suspend. |
| |
| From: Tyler Stachecki <tstache1@binghamton.edu> |
| |
| commit af61e27c3f77c7623b5335590ae24b6a5c323e22 upstream. |
| |
| On suspend, _scsih_suspend calls mpt2sas_base_free_resources, which |
| in turn calls pci_disable_device if the device is enabled prior to |
| suspending. However, _scsih_suspend also calls pci_disable_device |
| itself. |
| |
| Thus, in the event that the device is enabled prior to suspending, |
| pci_disable_device will be called twice. This patch removes the |
| duplicate call to pci_disable_device in _scsi_suspend as it is both |
| unnecessary and results in a kernel oops. |
| |
| Signed-off-by: Tyler Stachecki <tstache1@binghamton.edu> |
| Signed-off-by: James Bottomley <JBottomley@Parallels.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/scsi/mpt2sas/mpt2sas_scsih.c | 1 - |
| 1 file changed, 1 deletion(-) |
| |
| --- a/drivers/scsi/mpt2sas/mpt2sas_scsih.c |
| +++ b/drivers/scsi/mpt2sas/mpt2sas_scsih.c |
| @@ -8086,7 +8086,6 @@ _scsih_suspend(struct pci_dev *pdev, pm_ |
| |
| mpt2sas_base_free_resources(ioc); |
| pci_save_state(pdev); |
| - pci_disable_device(pdev); |
| pci_set_power_state(pdev, device_state); |
| return 0; |
| } |