[netdrivers] Performance improvements for Linux sk98lin driver
Tom Kelly
ctk21@eng.cam.ac.uk
Wed Feb 12 07:36:02 2003
Hi,
I have some performance improvements for the SysKonnect sk98lin driver in
the 2.4.xx series. It is available as a patch against the driver in 2.4.19
from:
http://www-lce.eng.cam.ac.uk/~ctk21/code/sk98lin-perf-2.4.19-1.patch
The first is to use netif_wake_queue when clearing the TX ring instead of
netif_start_queue. The former call checks to see whether there are packets
pending transmission on a qdisc and unlocks the device structures while
the later only unlocks the device structures. With this alteration
TX_COMPLETE interrupts can be moderated safely; with netif_start_queue the
qdisc on the device can have packets that never get sent until new packets
are enqueued on the interface.
The second is not to perform small packet copies by defaults; this may be
considered inappropriate on memory starved systems but here processor and
memory bandwidth were the scarce resource. So you're milage with this may
vary.
Hope it helps,
Tom