From 7ff38905813dc28ae1d192023de012556cb3c18a Mon Sep 17 00:00:00 2001 From: Eric Dumazet Date: Thu, 2 Jul 2009 04:04:45 +0000 Subject: [PATCH] --- yaml --- r: 155016 b: refs/heads/master c: 78c29bd95bd8d2c3bcf7932cb3ab8ae01cd8f58f h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/net/forcedeth.c | 25 ++++++++++++++----------- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/[refs] b/[refs] index df12add020fa..30c662c18cf9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3942453948015228d6b1ae9835a6f6ca3e842aaa +refs/heads/master: 78c29bd95bd8d2c3bcf7932cb3ab8ae01cd8f58f diff --git a/trunk/drivers/net/forcedeth.c b/trunk/drivers/net/forcedeth.c index 1094d292630f..3b4e0766c7b2 100644 --- a/trunk/drivers/net/forcedeth.c +++ b/trunk/drivers/net/forcedeth.c @@ -3514,11 +3514,13 @@ static irqreturn_t nv_nic_irq(int foo, void *data) nv_msi_workaround(np); #ifdef CONFIG_FORCEDETH_NAPI - napi_schedule(&np->napi); - - /* Disable furthur irq's - (msix not enabled with napi) */ - writel(0, base + NvRegIrqMask); + if (napi_schedule_prep(&np->napi)) { + /* + * Disable further irq's (msix not enabled with napi) + */ + writel(0, base + NvRegIrqMask); + __napi_schedule(&np->napi); + } #else do @@ -3615,12 +3617,13 @@ static irqreturn_t nv_nic_irq_optimized(int foo, void *data) nv_msi_workaround(np); #ifdef CONFIG_FORCEDETH_NAPI - napi_schedule(&np->napi); - - /* Disable furthur irq's - (msix not enabled with napi) */ - writel(0, base + NvRegIrqMask); - + if (napi_schedule_prep(&np->napi)) { + /* + * Disable further irq's (msix not enabled with napi) + */ + writel(0, base + NvRegIrqMask); + __napi_schedule(&np->napi); + } #else do {