linux/drivers/staging/octeon
David Daney 4898c56010 Staging: Octeon: Free transmit SKBs in a timely manner
If we wait for the once-per-second cleanup to free transmit SKBs,
sockets with small transmit buffer sizes might spend most of their
time blocked waiting for the cleanup.

Normally we do a cleanup for each transmitted packet.  We add a
watchdog type timer so that we also schedule a timeout for 150uS after
a packet is transmitted.  The watchdog is reset for each transmitted
packet, so for high packet rates, it never expires.  At these high
rates, the cleanups are done for each packet so the extra watchdog
initiated cleanups are neither needed nor triggered.

Signed-off-by: David Daney <ddaney@caviumnetworks.com>
To: linux-mips@linux-mips.org
To: netdev@vger.kernel.org
To: gregkh@suse.de
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Patchwork: http://patchwork.linux-mips.org/patch/968/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>

This version has spelling and comment changes based on feedback from
Eric Dumazet.
2010-02-27 12:53:30 +01:00
..
cvmx-address.h
cvmx-asxx-defs.h
cvmx-cmd-queue.c
cvmx-cmd-queue.h
cvmx-config.h
cvmx-dbg-defs.h
cvmx-fau.h
cvmx-fpa-defs.h
cvmx-fpa.c
cvmx-fpa.h
cvmx-gmxx-defs.h
cvmx-helper-board.c
cvmx-helper-board.h
cvmx-helper-fpa.c
cvmx-helper-fpa.h
cvmx-helper-loop.c
cvmx-helper-loop.h
cvmx-helper-npi.c
cvmx-helper-npi.h
cvmx-helper-rgmii.c
cvmx-helper-rgmii.h
cvmx-helper-sgmii.c
cvmx-helper-sgmii.h
cvmx-helper-spi.c
cvmx-helper-spi.h
cvmx-helper-util.c
cvmx-helper-util.h
cvmx-helper-xaui.c
cvmx-helper-xaui.h
cvmx-helper.c
cvmx-helper.h
cvmx-interrupt-decodes.c
cvmx-interrupt-rsl.c
cvmx-ipd.h
cvmx-mdio.h MIPS: Octeon: False positive timeout 2009-09-17 20:07:41 +02:00
cvmx-packet.h
cvmx-pcsx-defs.h
cvmx-pcsxx-defs.h
cvmx-pip-defs.h
cvmx-pip.h
cvmx-pko-defs.h
cvmx-pko.c
cvmx-pko.h
cvmx-pow.h Staging: fix assorted typos all over the place 2009-12-11 12:23:20 -08:00
cvmx-scratch.h
cvmx-smix-defs.h
cvmx-spi.c
cvmx-spi.h
cvmx-spxx-defs.h
cvmx-srxx-defs.h
cvmx-stxx-defs.h
cvmx-wqe.h
ethernet-defines.h Staging: Octeon: Free transmit SKBs in a timely manner 2010-02-27 12:53:30 +01:00
ethernet-mdio.c Staging: octeon-ethernet: Convert to use PHY Abstraction Layer. 2009-12-17 01:57:00 +00:00
ethernet-mdio.h Staging: octeon: remove unneeded includes 2010-02-27 12:53:28 +01:00
ethernet-mem.c Staging: Octeon Ethernet: Fix memory allocation. 2010-02-27 12:53:07 +01:00
ethernet-mem.h
ethernet-proc.c Staging: octeon-ethernet: Convert to use PHY Abstraction Layer. 2009-12-17 01:57:00 +00:00
ethernet-proc.h
ethernet-rgmii.c Staging: Octeon: Run phy bus accesses on a workqueue. 2010-02-27 12:53:29 +01:00
ethernet-rx.c Staging: Octeon Ethernet: Convert to NAPI. 2010-02-27 12:53:08 +01:00
ethernet-rx.h Staging: Octeon Ethernet: Convert to NAPI. 2010-02-27 12:53:08 +01:00
ethernet-sgmii.c Staging: octeon: remove unneeded includes 2010-02-27 12:53:28 +01:00
ethernet-spi.c Staging: octeon: remove unneeded includes 2010-02-27 12:53:28 +01:00
ethernet-tx.c Staging: Octeon: Free transmit SKBs in a timely manner 2010-02-27 12:53:30 +01:00
ethernet-tx.h Staging: Octeon: Free transmit SKBs in a timely manner 2010-02-27 12:53:30 +01:00
ethernet-util.h
ethernet-xaui.c Staging: octeon: remove unneeded includes 2010-02-27 12:53:28 +01:00
ethernet.c Staging: Octeon: Free transmit SKBs in a timely manner 2010-02-27 12:53:30 +01:00
Kconfig Staging: Octeon: Free transmit SKBs in a timely manner 2010-02-27 12:53:30 +01:00
Makefile
octeon-ethernet.h Staging: Octeon: Free transmit SKBs in a timely manner 2010-02-27 12:53:30 +01:00