2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-22 01:51:26 +00:00
Flavio Leitner 8b5fe2dc60 userspace: Add Generic Segmentation Offloading.
This provides a software implementation in the case
the egress netdev doesn't support segmentation in hardware.

The challenge here is to guarantee packet ordering in the
original batch that may be full of TSO packets. Each TSO
packet can go up to ~64kB, so with segment size of 1440
that means about 44 packets for each TSO. Each batch has
32 packets, so the total batch amounts to 1408 normal
packets.

The segmentation estimates the total number of packets
and then the total number of batches. Then allocate
enough memory and finally do the work.

Finally each batch is sent in order to the netdev.

Signed-off-by: Flavio Leitner <fbl@sysclose.org>
Co-authored-by: Mike Pattrick <mkp@redhat.com>
Signed-off-by: Mike Pattrick <mkp@redhat.com>
Acked-by: Simon Horman <horms@ovn.org>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
2023-12-02 01:33:37 +01:00
..
2023-06-29 22:13:55 +02:00
2020-07-27 14:50:17 -07:00
2023-03-29 22:16:04 +02:00
2022-07-15 20:14:24 +02:00
2023-11-21 09:40:49 +00:00
2019-12-20 12:23:06 -08:00
2023-11-01 10:54:19 +01:00
2022-05-30 23:34:39 +02:00
2021-06-22 21:29:57 +02:00
2017-08-03 14:48:33 -07:00
2019-12-20 12:23:06 -08:00
2023-07-14 22:24:03 +02:00