Commit db40b3f5 authored by Govindarajulu Varadarajan's avatar Govindarajulu Varadarajan Committed by David S. Miller

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: default avatarGovindarajulu Varadarajan <_govind@gmx.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent bd635c35
...@@ -283,12 +283,10 @@ static irqreturn_t enic_isr_legacy(int irq, void *data) ...@@ -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) ...@@ -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) ...@@ -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;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment