Commit cfd2aff7 authored by Hannes Reinecke's avatar Hannes Reinecke Committed by Martin K. Petersen

scsi: mpt: Move scsi_remove_host() out of mptscsih_remove_host()

Commit c5ce0abe ("scsi: sas: move scsi_remove_host call...")  moved
the call to scsi_remove_host() into sas_remove_host(), but forgot to
modify the mpt drivers.

Fixes: c5ce0abe ("scsi: sas: move scsi_remove_host call into sas_remove_host")
Signed-off-by: default avatarHannes Reinecke <hare@suse.com>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent e791ce27
...@@ -1329,7 +1329,7 @@ mptfc_probe(struct pci_dev *pdev, const struct pci_device_id *id) ...@@ -1329,7 +1329,7 @@ mptfc_probe(struct pci_dev *pdev, const struct pci_device_id *id)
WQ_MEM_RECLAIM); WQ_MEM_RECLAIM);
if (!ioc->fc_rescan_work_q) { if (!ioc->fc_rescan_work_q) {
error = -ENOMEM; error = -ENOMEM;
goto out_mptfc_probe; goto out_mptfc_host;
} }
/* /*
...@@ -1351,6 +1351,9 @@ mptfc_probe(struct pci_dev *pdev, const struct pci_device_id *id) ...@@ -1351,6 +1351,9 @@ mptfc_probe(struct pci_dev *pdev, const struct pci_device_id *id)
return 0; return 0;
out_mptfc_host:
scsi_remove_host(sh);
out_mptfc_probe: out_mptfc_probe:
mptscsih_remove(pdev); mptscsih_remove(pdev);
...@@ -1530,6 +1533,8 @@ static void mptfc_remove(struct pci_dev *pdev) ...@@ -1530,6 +1533,8 @@ static void mptfc_remove(struct pci_dev *pdev)
} }
} }
scsi_remove_host(ioc->sh);
mptscsih_remove(pdev); mptscsih_remove(pdev);
} }
......
...@@ -1176,8 +1176,6 @@ mptscsih_remove(struct pci_dev *pdev) ...@@ -1176,8 +1176,6 @@ mptscsih_remove(struct pci_dev *pdev)
MPT_SCSI_HOST *hd; MPT_SCSI_HOST *hd;
int sz1; int sz1;
scsi_remove_host(host);
if((hd = shost_priv(host)) == NULL) if((hd = shost_priv(host)) == NULL)
return; return;
......
...@@ -1548,11 +1548,19 @@ mptspi_probe(struct pci_dev *pdev, const struct pci_device_id *id) ...@@ -1548,11 +1548,19 @@ mptspi_probe(struct pci_dev *pdev, const struct pci_device_id *id)
return error; return error;
} }
static void mptspi_remove(struct pci_dev *pdev)
{
MPT_ADAPTER *ioc = pci_get_drvdata(pdev);
scsi_remove_host(ioc->sh);
mptscsih_remove(pdev);
}
static struct pci_driver mptspi_driver = { static struct pci_driver mptspi_driver = {
.name = "mptspi", .name = "mptspi",
.id_table = mptspi_pci_table, .id_table = mptspi_pci_table,
.probe = mptspi_probe, .probe = mptspi_probe,
.remove = mptscsih_remove, .remove = mptspi_remove,
.shutdown = mptscsih_shutdown, .shutdown = mptscsih_shutdown,
#ifdef CONFIG_PM #ifdef CONFIG_PM
.suspend = mptscsih_suspend, .suspend = mptscsih_suspend,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment