Re: [PATCH] Fixed TPACKET V3 to signal poll when block is closed rather than every packet

From: Guy Harris
Date: Sun Feb 01 2015 - 21:22:00 EST



On Dec 22, 2014, at 12:41 PM, David Miller <davem@xxxxxxxxxxxxx> wrote:

> From: Dan Collins <dan@xxxxxxxxxxxxxx>
> 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@xxxxxxxxxxxxxx>
>
> 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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/