[SCSI] qla2xxx: Drop use of IRQF_DISABLE.
authorGiridhar Malavali <giridhar.malavali@qlogic.com>
Tue, 24 Mar 2009 16:08:13 +0000 (09:08 -0700)
committerJames Bottomley <James.Bottomley@HansenPartnership.com>
Fri, 3 Apr 2009 14:22:51 +0000 (09:22 -0500)
When IRQs are shared by multiple controllers and if the first one
to register does not disable the IRQ, then IRQ will be enabled
for all other controllers by default, irrespective of their
setting. With IRQF_DISABLED registration, the driver interrupt
routine was called with interrupt enabled always. Disbaling the
registration with IRQF_DISABLED, since driver code is re-entrant
safe and all critical sections are guarded with interrupt safe
locks.

Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com>
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
drivers/scsi/qla2xxx/qla_isr.c

index 0f03812861b39da876dd9a7e9b0d40a47954e329..d04981848e561aed9e9c7853619f78c532d84174 100644 (file)
@@ -2018,7 +2018,7 @@ skip_msix:
 skip_msi:
 
        ret = request_irq(ha->pdev->irq, ha->isp_ops->intr_handler,
-           IRQF_DISABLED|IRQF_SHARED, QLA2XXX_DRIVER_NAME, rsp);
+           IRQF_SHARED, QLA2XXX_DRIVER_NAME, rsp);
        if (ret) {
                qla_printk(KERN_WARNING, ha,
                    "Failed to reserve interrupt %d already in use.\n",