Thread (1 message) 1 message, 1 author, 2014-01-08

Re: [PATCH net-next V2 1/3] net: Add GRO support for UDP encapsulating protocols

From: Or Gerlitz <hidden>
Date: 2014-01-08 12:15:28

On 08/01/2014 13:58, Eric Dumazet wrote:
On Wed, 2014-01-08 at 10:04 +0200, Or Gerlitz wrote:
quoted
On 07/01/2014 23:38, Eric Dumazet wrote:
quoted
On Tue, 2014-01-07 at 22:37 +0200, Or Gerlitz wrote:
quoted
So here's the thing, per my understanding we want to GRO only received
**encapsulated** packets whose checksum status is != CHECKSUM_NONE
which means the NIC has some support for doing RX checksum of
encapsulated packets. Per the current convension, in that case the NIC
RX code has to set skb->encapsulation see 6a674e9c75b17 "net: Add
support for hardware-offloaded encapsulation" this convension is
implemented in the current drivers that have HW offloads for
encapsulated packets (bnx2x, i40e and mlx4)
I do not think its true.

Some drivers set CHECKSUM_COMPLETE even for regular UDP frames...

git grep -n CHECKSUM_COMPLETE -- drivers/net

Eric, the point I was trying to make is that as long as the driver set a
value which is different from CHECKSUM_NONE
for an skb who carry encapsulated packet, we want skb->encapsulation to
be set, per the architecture dictated by the above commit.
Then this point is obviously wrong. Your interpretation is wrong, I am very sorry.
skb->encapsulation _might_ be set, only if the NIC is performing header
analysis. CHECKSUM_COMPLETE support doesn't require header analysis.


fair enough && thanks for shedding more light on this - so in that 
respect, the gro handler for udp encapsulated packets will not flush skb 
who is either marked with CHECKSUM_COMPLETE or has skb->encapsulation set.

Or.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help