summaryrefslogtreecommitdiff
path: root/net/dsa
diff options
context:
space:
mode:
authorVlastimil Setka <setka@vsis.cz>2015-02-23 17:30:29 (GMT)
committerDavid S. Miller <davem@davemloft.net>2015-02-23 23:07:36 (GMT)
commit8d4ac39df09c6f8078af60cd0ddd7b2435728e72 (patch)
treeb0d70b339c11f59b89dc18987ccb7f755ca1132e /net/dsa
parentfe6e4081a626d2987b73c9b15ed520b4f22d585f (diff)
downloadlinux-8d4ac39df09c6f8078af60cd0ddd7b2435728e72.tar.xz
altera_tse: Fixes in NAPI and interrupt handling paths
Incorrect NAPI polling caused WARNING at net/core/dev.c net_rx_action. Some stability issues were also seen at high throughput and system load before this patch. This patch contains several changes in altera_tse_main.c: - tse_rx() is fixed to not process more than `limit` frames - tse_poll() is refactored to match NAPI logic - only received frames are counted for return value - removed bogus condition `(rxcomplete >= budget || txcomplete > 0)` - replace by: if (rxcomplete < budget) -> call __napi_complete and enable irq - altera_isr() - replace spin_lock_irqsave() by spin_lock() - we are in isr - use spinlocks just over irq manipulation, not over __napi_schedule - reset IRQ first, then disable and schedule napi This is a cleaned up resubmission from Vlastimil's recent submission. Signed-off-by: Vlastimil Setka <setka@vsis.cz> Signed-off-by: Roman Pisl <rpisl@kky.zcu.cz> Signed-off-by: Vince Bridgers <vbridger@opensource.altera.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa')
0 files changed, 0 insertions, 0 deletions