diff options
author | Govindarajulu Varadarajan <_govind@gmx.com> | 2014-11-22 14:52:51 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-11-23 14:31:25 -0500 |
commit | db40b3f55a2297eff15f24a4d3d52f70783a6530 (patch) | |
tree | e677d547bc11ebc9dad8eb74a1db4d79e14e8e38 | |
parent | bd635c354de407b3cdca9d0948c7bfdc3c0c63cf (diff) |
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>
-rw-r--r-- | drivers/net/ethernet/cisco/enic/enic_main.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/net/ethernet/cisco/enic/enic_main.c b/drivers/net/ethernet/cisco/enic/enic_main.c index b9cda2fc5ae8..b42a48097dbd 100644 --- a/drivers/net/ethernet/cisco/enic/enic_main.c +++ b/drivers/net/ethernet/cisco/enic/enic_main.c | |||
@@ -283,12 +283,10 @@ static irqreturn_t enic_isr_legacy(int irq, void *data) | |||
283 | return IRQ_HANDLED; | 283 | return IRQ_HANDLED; |
284 | } | 284 | } |
285 | 285 | ||
286 | if (ENIC_TEST_INTR(pba, io_intr)) { | 286 | if (ENIC_TEST_INTR(pba, io_intr)) |
287 | if (napi_schedule_prep(&enic->napi[0])) | 287 | napi_schedule_irqoff(&enic->napi[0]); |
288 | __napi_schedule(&enic->napi[0]); | 288 | else |
289 | } else { | ||
290 | vnic_intr_unmask(&enic->intr[io_intr]); | 289 | vnic_intr_unmask(&enic->intr[io_intr]); |
291 | } | ||
292 | 290 | ||
293 | return IRQ_HANDLED; | 291 | return IRQ_HANDLED; |
294 | } | 292 | } |
@@ -313,7 +311,7 @@ static irqreturn_t enic_isr_msi(int irq, void *data) | |||
313 | * writes). | 311 | * writes). |
314 | */ | 312 | */ |
315 | 313 | ||
316 | napi_schedule(&enic->napi[0]); | 314 | napi_schedule_irqoff(&enic->napi[0]); |
317 | 315 | ||
318 | return IRQ_HANDLED; | 316 | return IRQ_HANDLED; |
319 | } | 317 | } |
@@ -322,7 +320,7 @@ static irqreturn_t enic_isr_msix(int irq, void *data) | |||
322 | { | 320 | { |
323 | struct napi_struct *napi = data; | 321 | struct napi_struct *napi = data; |
324 | 322 | ||
325 | napi_schedule(napi); | 323 | napi_schedule_irqoff(napi); |
326 | 324 | ||
327 | return IRQ_HANDLED; | 325 | return IRQ_HANDLED; |
328 | } | 326 | } |