]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Modify the transmit packet queuing strategy a bit to be a little less
authorBill Paul <wpaul@FreeBSD.org>
Mon, 19 Oct 1998 22:08:56 +0000 (22:08 +0000)
committerBill Paul <wpaul@FreeBSD.org>
Mon, 19 Oct 1998 22:08:56 +0000 (22:08 +0000)
commit1c403cb2b65b23f4256f006cd1846927ea469e65
tree5cc410c8103f315800178a2386157c92546ef4bf
parent6fc32ef8ee8e173059ecd759b722dcc4d730ef0e
Modify the transmit packet queuing strategy a bit to be a little less
agressive. With the old code, if a descriptor chain was already on its
way to the chip, xl_start() would try to splice new chains onto the end
of the current chain by stopping the transmitter, modifying the tail
pointer of the current chain to point to the head of the new chain, then
restart the transmitter. The manual says you're allowed to do this and
it works, but I'm not too keen on it anymore.

The new code waits until the eixsting chain has been sent and then
queues the next waiting chain in the 'transmit ok' handler.

Performance still looks good one way or the other.
sys/pci/if_xl.c
sys/pci/if_xlreg.h