Skip to content

Commit

Permalink
megaraid_sas: disable interrupt_mask before enabling hardware interrupts
Browse files Browse the repository at this point in the history
Update driver "mask_interrupts" before enable/disable hardware interrupt
in order to avoid missing interrupts because of "mask_interrupts" still
set to 1 and hardware interrupts are enabled.

Cc: <[email protected]>
Signed-off-by: Sumit Saxena <[email protected]>
Signed-off-by: Chaitra Basappa <[email protected]>
Reviewed-by: Martin K. Petersen <[email protected]>
Signed-off-by: Christoph Hellwig <[email protected]>
  • Loading branch information
[email protected] authored and Christoph Hellwig committed Jan 9, 2015
1 parent ab2f060 commit c2ced17
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion drivers/scsi/megaraid/megaraid_sas_fusion.c
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,8 @@ megasas_enable_intr_fusion(struct megasas_instance *instance)
{
struct megasas_register_set __iomem *regs;
regs = instance->reg_set;

instance->mask_interrupts = 0;
/* For Thunderbolt/Invader also clear intr on enable */
writel(~0, &regs->outbound_intr_status);
readl(&regs->outbound_intr_status);
Expand All @@ -110,7 +112,6 @@ megasas_enable_intr_fusion(struct megasas_instance *instance)

/* Dummy readl to force pci flush */
readl(&regs->outbound_intr_mask);
instance->mask_interrupts = 0;
}

/**
Expand Down

0 comments on commit c2ced17

Please sign in to comment.