From: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
To: netdev@vger.kernel.org
Cc: "Willem de Bruijn" <willemdebruijn.kernel@gmail.com>,
"Jason Wang" <jasowang@redhat.com>,
"Andrew Lunn" <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
"Eric Dumazet" <edumazet@google.com>,
"Jakub Kicinski" <kuba@kernel.org>,
"Paolo Abeni" <pabeni@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
"Xuan Zhuo" <xuanzhuo@linux.alibaba.com>,
"Eugenio Pérez" <eperezma@redhat.com>,
"Jiri Pirko" <jiri@resnulli.us>,
"Alvaro Karsz" <alvaro.karsz@solid-run.com>,
virtualization@lists.linux.dev
Subject: [PATCH net v10 0/2] virtio-net: fix for VIRTIO_NET_F_GUEST_HDRLEN
Date: Fri, 13 Mar 2026 15:59:28 +0800 [thread overview]
Message-ID: <20260313075930.105466-1-xuanzhuo@linux.alibaba.com> (raw)
v10:
1. fix http://lore.kernel.org/all/202603122214.8Anoxrmq-lkp@intel.com
v9:
1. Introduce new helpers to set hdr len, and virtio_net_hdr_tnl_from_skb
calls them directly.
v8:
1. move changes of virtio_net_hdr_from_skb for udp tunnel to #2
2. remove change for num_sg
v7:
1. fix bug reported by robot
2. Still splitting into two commits, as the issues fixed originate from
different commits. This separation makes it easier to selectively revert to
previous versions.
v6:
1. rename to guest_hdrlen
2. introduce a function virtio_net_set_hdrlen to set the hdrlen
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/20251029030913.20423-1-xuanzhuo@linux.alibaba.com
Xuan Zhuo (2):
virtio-net: correct hdr_len handling for VIRTIO_NET_F_GUEST_HDRLEN
virtio-net: correct hdr_len handling for tunnel gso
drivers/net/tun_vnet.h | 2 +-
drivers/net/virtio_net.c | 6 ++++-
include/linux/virtio_net.h | 51 +++++++++++++++++++++++++++++++++++---
3 files changed, 53 insertions(+), 6 deletions(-)
--
2.32.0.3.g01195cf9f
next reply other threads:[~2026-03-13 7:59 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-13 7:59 Xuan Zhuo [this message]
2026-03-13 7:59 ` [PATCH net v10 1/2] virtio-net: correct hdr_len handling for VIRTIO_NET_F_GUEST_HDRLEN Xuan Zhuo
2026-03-17 11:29 ` Paolo Abeni
2026-03-20 1:47 ` Xuan Zhuo
2026-03-18 4:07 ` Jason Wang
2026-03-18 4:11 ` Jason Wang
2026-03-18 5:52 ` Xuan Zhuo
2026-03-19 8:15 ` Paolo Abeni
2026-03-20 0:38 ` Jason Wang
2026-03-13 7:59 ` [PATCH net v10 2/2] virtio-net: correct hdr_len handling for tunnel gso Xuan Zhuo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260313075930.105466-1-xuanzhuo@linux.alibaba.com \
--to=xuanzhuo@linux.alibaba.com \
--cc=alvaro.karsz@solid-run.com \
--cc=andrew+netdev@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=eperezma@redhat.com \
--cc=jasowang@redhat.com \
--cc=jiri@resnulli.us \
--cc=kuba@kernel.org \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=virtualization@lists.linux.dev \
--cc=willemdebruijn.kernel@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox