Don't request outer UDP checksum on a new segment, if none was needed.
Instead, rely on offloads set by the tunnel encapsulation code and
inherited from the TSO packet.

Fixes: 2956a612651e ("dp-packet: Rework L4 checksum offloads.")
Signed-off-by: David Marchand <[email protected]>
---
Changes since v1:
- dropped the assert in the helper: a packet encapsulated in a UDP tunnel
  with csum disabled may still end up with a L4 partial status if any
  payload is updated,

---
 lib/dp-packet-gso.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/lib/dp-packet-gso.c b/lib/dp-packet-gso.c
index 58b4401f60..362bc8f66d 100644
--- a/lib/dp-packet-gso.c
+++ b/lib/dp-packet-gso.c
@@ -153,7 +153,6 @@ dp_packet_gso(struct dp_packet *p, struct dp_packet_batch 
**batches)
 
             tnl_hdr = dp_packet_l4(seg);
             tnl_hdr->udp_len = htons(dp_packet_l4_size(seg));
-            dp_packet_l4_checksum_set_partial(seg);
         }
 
         if (udp_tnl || gre_tnl) {
-- 
2.51.0

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to