summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/megaraid
diff options
context:
space:
mode:
authoradam radford <aradford@gmail.com>2011-05-11 18:34:17 -0700
committerJames Bottomley <jbottomley@parallels.com>2011-05-24 12:35:09 -0400
commit46fd256e05581e4a04d5a8ec107d35afe938c65b (patch)
tree787ce3696aec427014964de1ae978d40c4f25f47 /drivers/scsi/megaraid
parent7e70e7336515cd367b9cfcf5379e04808bdcbe96 (diff)
downloadlinux-46fd256e05581e4a04d5a8ec107d35afe938c65b.tar.bz2
[SCSI] megaraid_sas: Disable interrupts/free_irq() in megasas_shutdown()
The following patch for megaraid_sas disables interrupts and free_irq() in megasas_shutdown(). Signed-off-by: Adam Radford <aradford@gmail.com> Signed-off-by: James Bottomley <jbottomley@parallels.com>
Diffstat (limited to 'drivers/scsi/megaraid')
-rw-r--r--drivers/scsi/megaraid/megaraid_sas_base.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
index 19a55032218f..a32b6ba0e9e5 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -4526,6 +4526,11 @@ static void megasas_shutdown(struct pci_dev *pdev)
instance->unload = 1;
megasas_flush_cache(instance);
megasas_shutdown_controller(instance, MR_DCMD_CTRL_SHUTDOWN);
+ instance->instancet->disable_intr(instance->reg_set);
+ free_irq(instance->msi_flag ? instance->msixentry.vector :
+ instance->pdev->irq, instance);
+ if (instance->msi_flag)
+ pci_disable_msix(instance->pdev);
}
/**