diff options
author | Eric Dumazet <[email protected]> | 2023-06-05 16:16:47 +0000 |
---|---|---|
committer | Jakub Kicinski <[email protected]> | 2023-06-06 21:07:43 -0700 |
commit | 82a01ab35bd02ba4b0b4e12bc95c5b69240eb7b0 (patch) | |
tree | 0f74163fbde30e7dfadc49188c999adc1960e243 /tools/perf/scripts/python | |
parent | a2f4c143d76b1a47c91ef9bc46907116b111da0b (diff) |
tcp: gso: really support BIG TCP
We missed that tcp_gso_segment() was assuming skb->len was smaller than 65535 :
oldlen = (u16)~skb->len;
This part came with commit 0718bcc09b35 ("[NET]: Fix CHECKSUM_HW GSO problems.")
This leads to wrong TCP checksum.
Adapt the code to accept arbitrary packet length.
v2:
- use two csum_add() instead of csum_fold() (Alexander Duyck)
- Change delta type to __wsum to reduce casts (Alexander Duyck)
Fixes: 09f3d1a3a52c ("ipv6/gso: remove temporary HBH/jumbo header")
Signed-off-by: Eric Dumazet <[email protected]>
Reviewed-by: Alexander Duyck <[email protected]>
Reviewed-by: Simon Horman <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions