Re: [PATCH 0/2] Get rid of ndo_xmit_flush
From: David Miller <davem@davemloft.net>
Date: 2014-08-27 20:46:51
From: David Miller <davem@davemloft.net>
Date: 2014-08-27 20:46:51
From: Eric Dumazet <redacted> Date: Wed, 27 Aug 2014 06:23:58 -0700
On Wed, 2014-08-27 at 14:31 +0200, Hannes Frederic Sowa wrote:quoted
One thing one should keep in mind is, that there must be a skb available to trigger the flush, maybe this will hurt us one day. Thinking more about it should we go with a coccinelle script and replace/extend ndo_start_xmit with an additional argument?This will be a pain for backports and things like that.
Agreed.
skb->xmit_more is a bit annoying, because it consumes one bit in all skbs, while it could be one byte per cpu as ndo_start_xmit() is called while BH are disabled. It also forces a cache line dirtying, that will hurt qdisc like HTB where skbs can be cooked/enqueued by remote cpus.
The xmit_more value sits in the same cache line as the queue number, which also gets dirtied in the TX fast path.