]> git.proxmox.com Git - mirror_ovs.git/commit
netdev-linux: Prepend the std packet in the TSO packet
authorFlavio Leitner <fbl@sysclose.org>
Mon, 3 Feb 2020 21:45:50 +0000 (18:45 -0300)
committerBen Pfaff <blp@ovn.org>
Thu, 6 Feb 2020 19:37:23 +0000 (11:37 -0800)
commit73858f9dbe83daf8cc8d4b604acc23eb62cc3f52
tree320d642d7fb3bca1328555ec027620fb9dd3f71d
parent2297cbe6cc25b6b1862c499ce8f16f52f75d9e5f
netdev-linux: Prepend the std packet in the TSO packet

Usually TSO packets are close to 50k, 60k bytes long, so to
to copy less bytes when receiving a packet from the kernel
change the approach. Instead of extending the MTU sized
packet received and append with remaining TSO data from
the TSO buffer, allocate a TSO packet with enough headroom
to prepend the std packet data.

Fixes: 29cf9c1b3b9c ("userspace: Add TCP Segmentation Offload support")
Suggested-by: Ben Pfaff <blp@ovn.org>
Signed-off-by: Flavio Leitner <fbl@sysclose.org>
Signed-off-by: Ben Pfaff <blp@ovn.org>
lib/dp-packet.c
lib/dp-packet.h
lib/netdev-linux-private.h
lib/netdev-linux.c