aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/megaraid/megaraid_sas.h
diff options
context:
space:
mode:
authorChandrakanth Patil <chandrakanth.patil@broadcom.com>2019-06-25 16:34:22 +0530
committerMartin K. Petersen <martin.petersen@oracle.com>2019-06-27 00:07:35 -0400
commita6ffd5bf681905729a4926cb3006d0329dd5d857 (patch)
tree5e81d02f2968e1614311afc8f24b4093764aa8ed /drivers/scsi/megaraid/megaraid_sas.h
parentscsi: megaraid_sas: Remove few debug counters from IO path (diff)
downloadlinux-dev-a6ffd5bf681905729a4926cb3006d0329dd5d857.tar.xz
linux-dev-a6ffd5bf681905729a4926cb3006d0329dd5d857.zip
scsi: megaraid_sas: Call disable_irq from process IRQ poll
On PowerPC architecture, calling disable_irq_nosync from IRQ context is not providing the required effect. In current megaraid_sas driver, disable_irq_nosync is being called from IRQ context before enabling IRQ poll. But due to the issue seen on PPC, after IRQ poll disable and legacy ISR is enabled, we are not seeing our ISR getting called. Fix: Call disable_irq from IRQ poll thread context instead of IRQ context. Signed-off-by: Shivasharan S <shivasharan.srikanteshwara@broadcom.com> Signed-off-by: Chandrakanth Patil <chandrakanth.patil@broadcom.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/megaraid/megaraid_sas.h')
-rw-r--r--drivers/scsi/megaraid/megaraid_sas.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas.h b/drivers/scsi/megaraid/megaraid_sas.h
index a9720216cad0..d333b8e302f9 100644
--- a/drivers/scsi/megaraid/megaraid_sas.h
+++ b/drivers/scsi/megaraid/megaraid_sas.h
@@ -2186,6 +2186,7 @@ struct megasas_irq_context {
u32 os_irq;
struct irq_poll irqpoll;
bool irq_poll_scheduled;
+ bool irq_line_enable;
};
struct MR_DRV_SYSTEM_INFO {