Thread (4 messages) flat view 4 messages, 3 authors, 2014-07-13

Re: [PATCH v2 0/4] net: Checksum offload changes - Part IV

From: Sharat Masetty <hidden>
Date: 2014-07-11 05:40:52

Don't do skb_checksum more than once per packet
Was wondering in which cases does the stack perform the checksum more
than once? __skb_checksum_complete_head() already sets the ip_summed
to CHECKSUM_UNNECESSARY, so future checksum calculations are avoided.
What am I missing?

Thanks
Sharat

On Wed, Jun 11, 2014 at 4:46 PM, David Miller [off-list ref] wrote:
From: Tom Herbert <redacted>
Date: Tue, 10 Jun 2014 18:54:03 -0700 (PDT)
quoted
I am working on overhauling RX checksum offload. Goals of this effort
are:

- Specify what exactly it means when driver returns CHECKSUM_UNNECESSARY
- Preserve CHECKSUM_COMPLETE through encapsulation layers
- Don't do skb_checksum more than once per packet
- Unify GRO and non-GRO csum verification as much as possible
- Unify the checksum functions (checksum_init)
- Simply code

What is in this fourth patch set:

- Preserve CHECKSUM_COMPLETE instead of changing it to
  CHECKSUM_UNNECESSARY. This allows correct reuse in validating multiple
  csums in a packet.
- When SW needs to compute the packet checksum, save it as
  CHECKSUM_COMPLETE. Also mark that checksum was compute by SW.
- Add skb_gro_postpull_rcsum to udp and vxlan to make GRO work with
  CHECKSUM_COMPLETE.

v2: Removed patch setting skb_encapsulation when validating checksum
    in tcp_gro_receive

Please review carefully and test if possible, mucking with basic
checksum functions is always a little precarious :-)
Series applied, thanks Tom.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help