Thread (18 messages) flat view 18 messages, 5 authors, 2012-12-07

Re: [PATCH v3 1/4] net: Add support for hardware-offloaded encapsulation

From: Joseph Gasparakis <hidden>
Date: 2012-12-07 19:44:23
Also in: lkml


On Fri, 7 Dec 2012, David Miller wrote:
From: Joseph Gasparakis <redacted>
Date: Fri, 7 Dec 2012 11:41:46 -0800 (PST)
quoted

On Fri, 7 Dec 2012, David Miller wrote:
quoted
From: Joseph Gasparakis <redacted>
Date: Fri, 7 Dec 2012 10:24:17 -0800 (PST)
quoted
So the idea here is that the driver will use the headers for checksumming 
if the skb->encapsulation bit is on. The bit should be set in the protocol 
driver.

To answer the second comment, the flags that we use in this series of 
patches is NETIF_F_IP_CSUM, NETIF_F_IPV6_CSUM and NETIF_F_SG. These are 
the bits that we propose will be used for checksumming of encapsulation. 
As per a previous comment in v2, the hw_enc_features field should be used 
also in the future when NICs have more encap offloads, so one could
indicate these features there from the driver.

Furthermore, I submitted a patch for Rx checksumming, where NETIF_F_RXCSUM 
is used, again in conjunction with skb->encapsulation flag. As I mention 
in my logs, the driver is expected to set the ip_summed to UNNECESSARY and 
turn the skb->encapsulation on, to indicate that the inner headers are 
already HW checksummed.
This is the kind of language that belongs in the commit message and
code comments.
Sure. I'll wait to gather some more feedback if there is any and I will 
re-spin this off adding more code comments and clarify this in the logs.
Great.

Please note that this request applies to your receive side change too.
I believe the logs are sufficient in the rx patch:

This patch adds capability in vxlan to identify received
checksummed inner packets and signal them to the upper layers of
the stack. The driver needs to set the skb->encapsulation bit
and also set the skb->ip_summed to CHECKSUM_UNNECESSARY.

...but I can add more comments to the code if this is what you are 
referring to.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help