|
Chuck Ebbert |
81538f6 |
hpsa: Add IRQF_SHARED back in for the non-MSI(X) interrupt handler
|
|
Chuck Ebbert |
81538f6 |
|
|
Chuck Ebbert |
81538f6 |
From: Stephen M. Cameron <scameron@beardog.cce.hp.com>
|
|
Chuck Ebbert |
81538f6 |
|
|
Chuck Ebbert |
81538f6 |
IRQF_SHARED is required for older controllers that don't support MSI(X)
|
|
Chuck Ebbert |
81538f6 |
and which may end up sharing an interrupt. All the controllers hpsa
|
|
Chuck Ebbert |
81538f6 |
normally supports have MSI(X) capability, but older controllers may be
|
|
Chuck Ebbert |
81538f6 |
encountered via the hpsa_allow_any=1 module parameter.
|
|
Chuck Ebbert |
81538f6 |
|
|
Chuck Ebbert |
81538f6 |
Also remove deprecated IRQF_DISABLED.
|
|
Chuck Ebbert |
81538f6 |
|
|
Chuck Ebbert |
81538f6 |
Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com>
|
|
Chuck Ebbert |
81538f6 |
---
|
|
Chuck Ebbert |
81538f6 |
drivers/scsi/hpsa.c | 4 ++--
|
|
Chuck Ebbert |
81538f6 |
1 files changed, 2 insertions(+), 2 deletions(-)
|
|
Chuck Ebbert |
81538f6 |
|
|
Chuck Ebbert |
81538f6 |
RHBZ 754907
|
|
Chuck Ebbert |
81538f6 |
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
|
|
Chuck Ebbert |
81538f6 |
index 865d452..594ce83 100644
|
|
Chuck Ebbert |
81538f6 |
--- a/drivers/scsi/hpsa.c
|
|
Chuck Ebbert |
81538f6 |
+++ b/drivers/scsi/hpsa.c
|
|
Chuck Ebbert |
81538f6 |
@@ -4072,10 +4072,10 @@ static int hpsa_request_irq(struct ctlr_info *h,
|
|
Chuck Ebbert |
81538f6 |
|
|
Chuck Ebbert |
81538f6 |
if (h->msix_vector || h->msi_vector)
|
|
Chuck Ebbert |
81538f6 |
rc = request_irq(h->intr[h->intr_mode], msixhandler,
|
|
Chuck Ebbert |
81538f6 |
- IRQF_DISABLED, h->devname, h);
|
|
Chuck Ebbert |
81538f6 |
+ 0, h->devname, h);
|
|
Chuck Ebbert |
81538f6 |
else
|
|
Chuck Ebbert |
81538f6 |
rc = request_irq(h->intr[h->intr_mode], intxhandler,
|
|
Chuck Ebbert |
81538f6 |
- IRQF_DISABLED, h->devname, h);
|
|
Chuck Ebbert |
81538f6 |
+ IRQF_SHARED, h->devname, h);
|
|
Chuck Ebbert |
81538f6 |
if (rc) {
|
|
Chuck Ebbert |
81538f6 |
dev_err(&h->pdev->dev, "unable to get irq %d for %s\n",
|
|
Chuck Ebbert |
81538f6 |
h->intr[h->intr_mode], h->devname);
|