summaryrefslogtreecommitdiffstats
path: root/drivers/net/tsi108_eth.c
diff options
context:
space:
mode:
authorbroonie@sirena.org.uk <broonie@sirena.org.uk>2007-03-14 19:49:14 +0000
committerJeff Garzik <jeff@garzik.org>2007-03-15 10:59:54 -0400
commit069f8256362b7a17da532f0631cee73b4cfee65b (patch)
treeee8e9e4a3b78de04e15a71a4b4216bfc050b3a8a /drivers/net/tsi108_eth.c
parent14fdd90ef2ec1878d6851ec4dd8d5abb2cef098c (diff)
downloadlinux-069f8256362b7a17da532f0631cee73b4cfee65b.tar.bz2
natsemi: Fix NAPI for interrupt sharing
The interrupt status register for the natsemi chips is clear on read and was read unconditionally from both the interrupt and from the NAPI poll routine, meaning that if the interrupt service routine was called (for example, due to a shared interrupt) while a NAPI poll was scheduled interrupts could be missed. This patch fixes that by ensuring that the interrupt status register is only read by the interrupt handler when interrupts are enabled from the chip. It also reverts a workaround for this problem from the netpoll hook and improves the trace for interrupt events. Thanks to Sergei Shtylyov <sshtylyov@ru.mvista.com> for spotting the issue, Mark Huth <mhuth@mvista.com> for a simpler method and Simon Blake <simon@citylink.co.nz> for testing resources. Signed-Off-By: Mark Brown <broonie@sirena.org.uk> Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/tsi108_eth.c')
0 files changed, 0 insertions, 0 deletions