Ben Greear wrote:
Jeff Garzik wrote:
Feldman, Scott wrote:
* Change the default number of Tx descriptors from 256 to 1024.
Data from [ricardoz@xxxxxxxxxx] shows it's easy to overrun
the Tx desc queue.
All e1000 patches applied except this one.
Of _course_ it's easy to overrun the Tx desc queue. That's why we
have a TX queue sitting on top of the NIC's hardware queue. And TCP
socket buffers on top of that. And similar things.
Descriptor increases like this are usually the result of some
sillyhead blasting out UDP packets, and then wondering why he sees
packet loss on the local computer (the "blast out packets" side).
Erm, shouldn't the local machine back itself off if the various
queues are full? Some time back I looked through the code and it
appeared to. If not, I think it should.
Given the guarantees of the protocol, the net stack has the freedom to
drop UDP packets, for example at times when (for TCP) one would
otherwise queue a packet for retransmit.
Jeff
|