Can you point me at this?
Well, we do have such a thing, in the ring suppression flags.
Ah, sorry, I misunderstood. No, we don't have a threshold like this, we
have an all-or-nothing flag in each direction.
We have the ability to add new fields to the rings. I've put it on my
TODO to benchmark what this does. It may or may not help. In this case,
notification when there are no more packets in xmit ring would be
sufficient. We already kick the host when we fill a ring even if
it says it doesn't need it, perhaps this would be symmetry.
Note that DaveMThat depends on whether Linux knows whether more packets are coming.
is talking about moving network tx queue into the net drivers themselves,
which will make them much more efficient (ie. drain entire queue before
kick), which may again change the balance of what the Right Thing is.
The current problem is that hard_start_xmit gets called with a packet, and has no idea if there are more in the tx queue. By having the driver control
the queue, it can at least tell that.
The question remains whether this will be sufficient for tx mitigation. A
program may be about to write more to the socket, and we can't know that.
But it can hardly hurt.