summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/megaraid
diff options
context:
space:
mode:
authoradam radford <aradford@gmail.com>2011-02-24 20:56:21 -0800
committerJames Bottomley <James.Bottomley@suse.de>2011-02-28 11:46:53 -0600
commite1419191d8d38098fb6ef29e94aadd15dabff3da (patch)
tree0450fe08f12f228cb1d02acb83c276d656e6f5dd /drivers/scsi/megaraid
parent0a77066acc78b4048b0afc9d70b7e91c06e63356 (diff)
downloadlinux-e1419191d8d38098fb6ef29e94aadd15dabff3da.tar.bz2
[SCSI] megaraid_sas: Call tasklet_schedule for MSI-X
The following patch for megaraid_sas calls tasklet_schedule() even if outbound_intr_status == 0 for MFI based boards in MSI-X mode. Signed-off-by: Adam Radford <aradford@gmail.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/megaraid')
-rw-r--r--drivers/scsi/megaraid/megaraid_sas_base.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
index 78c263337b0b..050ec1694e68 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -2503,7 +2503,9 @@ megasas_deplete_reply_queue(struct megasas_instance *instance,
if ((mfiStatus = instance->instancet->clear_intr(
instance->reg_set)
) == 0) {
- return IRQ_NONE;
+ /* Hardware may not set outbound_intr_status in MSI-X mode */
+ if (!instance->msi_flag)
+ return IRQ_NONE;
}
instance->mfiStatus = mfiStatus;