The commit be50da3e9d4a ("net: virtio_net: implement exact header length
guest feature") introduces support for the VIRTIO_NET_F_GUEST_HDRLEN
feature in virtio-net.This feature requires virtio-net to set hdr_len to the actual header length of the packet when transmitting, the number of bytes from the start of the packet to the beginning of the transport-layer payload. However, in practice, hdr_len was being set using skb_headlen(skb), which is clearly incorrect. This path set fixes that issue. As discussed in [0], this version checks the VIRTIO_NET_F_GUEST_HDRLEN is negotiated. [0]: http://lore.kernel.org/all/[email protected] Xuan Zhuo (2): virtio-net: correct hdr_len handling for VIRTIO_NET_F_GUEST_HDRLEN virtio-net: correct hdr_len handling for tunnel gso arch/um/drivers/vector_transports.c | 1 + drivers/net/tun_vnet.h | 4 +-- drivers/net/virtio_net.c | 9 +++++-- include/linux/virtio_net.h | 40 +++++++++++++++++++++++------ net/packet/af_packet.c | 5 ++-- 5 files changed, 45 insertions(+), 14 deletions(-) -- 2.32.0.3.g01195cf9f
