Browse Source

[SCSI] qla2xxx: Drop use of IRQF_DISABLE.

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>
Giridhar Malavali 16 years ago
parent
commit
d1b1bef4c9
1 changed files with 1 additions and 1 deletions
  1. 1 1
      drivers/scsi/qla2xxx/qla_isr.c

+ 1 - 1
drivers/scsi/qla2xxx/qla_isr.c

@@ -2018,7 +2018,7 @@ skip_msix:
 skip_msi:
 skip_msi:
 
 
 	ret = request_irq(ha->pdev->irq, ha->isp_ops->intr_handler,
 	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) {
 	if (ret) {
 		qla_printk(KERN_WARNING, ha,
 		qla_printk(KERN_WARNING, ha,
 		    "Failed to reserve interrupt %d already in use.\n",
 		    "Failed to reserve interrupt %d already in use.\n",