diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-17 12:49:28 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-17 12:49:28 -0700 |
| commit | 3d68bd0010d2c9bc9ad6004fdcc4d6a56dcae199 (patch) | |
| tree | 013ac9bd1bc68d1d9dda17346eefc617aeb47265 /drivers/net/r6040.c | |
| parent | efcbae253f97bf82e7befd372da3ad5995a53f1a (diff) | |
| parent | 05e9a2f67849e427f8900bad0a3f2a939e8dd3d6 (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.c | 8 |
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 */ |
