Messages in this thread | | | Subject | Re: [PATCH] Fixed TPACKET V3 to signal poll when block is closed rather than every packet | From | Guy Harris <> | Date | Sun, 1 Feb 2015 18:11:00 -0800 |
| |
On Dec 22, 2014, at 12:41 PM, David Miller <davem@davemloft.net> wrote:
> From: Dan Collins <dan@dcollins.co.nz> > Date: Fri, 19 Dec 2014 16:49:25 +1300 > >> Make TPACKET_V3 signal poll when block is closed rather than for every >> packet. Side effect is that poll will be signaled when block retire >> timer expires which didn't previously happen. Issue was visible when >> sending packets at a very low frequency such that all blocks are retired >> before packets are received by TPACKET_V3. This caused avoidable packet >> loss. The fix ensures that the signal is sent when blocks are closed >> which covers the normal path where the block is filled as well as the >> path where the timer expires. The case where a block is filled without >> moving to the next block (ie. all blocks are full) will still cause poll >> to be signaled. >> >> Signed-off-by: Dan Collins <dan@dcollins.co.nz> > > Applied, thanks.
Should this be applied to any of the stable kernel branches? The old behavior is the source of some libpcap/tcpdump/etc. complaints; see, for example, the thread that included
http://marc.info/?l=linux-netdev&m=140713966510035&w=2
| |