summaryrefslogtreecommitdiff
path: root/drivers/net/r6040.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-07-17 12:49:28 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2011-07-17 12:49:28 -0700
commit3d68bd0010d2c9bc9ad6004fdcc4d6a56dcae199 (patch)
tree013ac9bd1bc68d1d9dda17346eefc617aeb47265 /drivers/net/r6040.c
parentefcbae253f97bf82e7befd372da3ad5995a53f1a (diff)
parent05e9a2f67849e427f8900bad0a3f2a939e8dd3d6 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: Bluetooth: Fix crash with incoming L2CAP connections Bluetooth: Fix regression in L2CAP connection procedure gianfar: rx parser r6040: only disable RX interrupt if napi_schedule_prep is successful net: remove NETIF_F_ALL_TX_OFFLOADS net: sctp: fix checksum marking for outgoing packets
Diffstat (limited to 'drivers/net/r6040.c')
-rw-r--r--drivers/net/r6040.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/net/r6040.c b/drivers/net/r6040.c
index 200a363c3bf..0ffec460844 100644
--- a/drivers/net/r6040.c
+++ b/drivers/net/r6040.c
@@ -677,9 +677,11 @@ static irqreturn_t r6040_interrupt(int irq, void *dev_id)
if (status & RX_FIFO_FULL)
dev->stats.rx_fifo_errors++;
- /* Mask off RX interrupt */
- misr &= ~RX_INTS;
- napi_schedule(&lp->napi);
+ if (likely(napi_schedule_prep(&lp->napi))) {
+ /* Mask off RX interrupt */
+ misr &= ~RX_INTS;
+ __napi_schedule(&lp->napi);
+ }
}
/* TX interrupt request */