enic: use napi_schedule_irqoff()
enic_isr_legacy(), enic_isr_msix() & enic_isr_msi() run from hard interrupt context. They can use napi_schedule_irqoff() instead of napi_schedule() Signed-off-by: Govindarajulu Varadarajan <_govind@gmx.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
bd635c354d
commit
db40b3f55a
|
@ -283,12 +283,10 @@ static irqreturn_t enic_isr_legacy(int irq, void *data)
|
||||||
return IRQ_HANDLED;
|
return IRQ_HANDLED;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ENIC_TEST_INTR(pba, io_intr)) {
|
if (ENIC_TEST_INTR(pba, io_intr))
|
||||||
if (napi_schedule_prep(&enic->napi[0]))
|
napi_schedule_irqoff(&enic->napi[0]);
|
||||||
__napi_schedule(&enic->napi[0]);
|
else
|
||||||
} else {
|
|
||||||
vnic_intr_unmask(&enic->intr[io_intr]);
|
vnic_intr_unmask(&enic->intr[io_intr]);
|
||||||
}
|
|
||||||
|
|
||||||
return IRQ_HANDLED;
|
return IRQ_HANDLED;
|
||||||
}
|
}
|
||||||
|
@ -313,7 +311,7 @@ static irqreturn_t enic_isr_msi(int irq, void *data)
|
||||||
* writes).
|
* writes).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
napi_schedule(&enic->napi[0]);
|
napi_schedule_irqoff(&enic->napi[0]);
|
||||||
|
|
||||||
return IRQ_HANDLED;
|
return IRQ_HANDLED;
|
||||||
}
|
}
|
||||||
|
@ -322,7 +320,7 @@ static irqreturn_t enic_isr_msix(int irq, void *data)
|
||||||
{
|
{
|
||||||
struct napi_struct *napi = data;
|
struct napi_struct *napi = data;
|
||||||
|
|
||||||
napi_schedule(napi);
|
napi_schedule_irqoff(napi);
|
||||||
|
|
||||||
return IRQ_HANDLED;
|
return IRQ_HANDLED;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue