mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-06 10:57:46 +00:00
IB/hfi1: Return correct value in general interrupt handler
The general interrupt handler returns IRQ_HANDLED whether an IRQ was handled or not. Determine if an IRQ was handled and return the correct value. Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Reviewed-by: Michael J. Ruhl <michael.j.ruhl@intel.com> Signed-off-by: Kamenee Arumugam <kamenee.arumugam@intel.com> Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
753b19afb1
commit
09592af5fd
1 changed files with 3 additions and 1 deletions
|
@ -8240,6 +8240,7 @@ static irqreturn_t general_interrupt(int irq, void *data)
|
||||||
u64 regs[CCE_NUM_INT_CSRS];
|
u64 regs[CCE_NUM_INT_CSRS];
|
||||||
u32 bit;
|
u32 bit;
|
||||||
int i;
|
int i;
|
||||||
|
irqreturn_t handled = IRQ_NONE;
|
||||||
|
|
||||||
this_cpu_inc(*dd->int_counter);
|
this_cpu_inc(*dd->int_counter);
|
||||||
|
|
||||||
|
@ -8260,9 +8261,10 @@ static irqreturn_t general_interrupt(int irq, void *data)
|
||||||
for_each_set_bit(bit, (unsigned long *)®s[0],
|
for_each_set_bit(bit, (unsigned long *)®s[0],
|
||||||
CCE_NUM_INT_CSRS * 64) {
|
CCE_NUM_INT_CSRS * 64) {
|
||||||
is_interrupt(dd, bit);
|
is_interrupt(dd, bit);
|
||||||
|
handled = IRQ_HANDLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
return IRQ_HANDLED;
|
return handled;
|
||||||
}
|
}
|
||||||
|
|
||||||
static irqreturn_t sdma_interrupt(int irq, void *data)
|
static irqreturn_t sdma_interrupt(int irq, void *data)
|
||||||
|
|
Loading…
Reference in a new issue