virtio-net: fix incorrect flags recording in big mode
authorXuan Zhuo <xuanzhuo@linux.alibaba.com>
Tue, 11 Nov 2025 09:08:28 +0000 (17:08 +0800)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 13 Nov 2025 12:16:30 +0000 (13:16 +0100)
commit0eff2eaa5322b5b141ff5d5ded26fac4a52b5f7b
tree17fea04f6d25bb958b5d1b3d958462d7a9a75f3f
parentfe82c4f8a228d3b3ec2462ea2d43fa532a20ac67
virtio-net: fix incorrect flags recording in big mode

The purpose of commit 703eec1b2422 ("virtio_net: fixing XDP for fully
checksummed packets handling") is to record the flags in advance, as
their value may be overwritten in the XDP case. However, the flags
recorded under big mode are incorrect, because in big mode, the passed
buf does not point to the rx buffer, but rather to the page of the
submitted buffer. This commit fixes this issue.

For the small mode, the commit c11a49d58ad2 ("virtio_net: Fix mismatched
buf address when unmapping for small packets") fixed it.

Tested-by: Alyssa Ross <hi@alyssa.is>
Fixes: 703eec1b2422 ("virtio_net: fixing XDP for fully checksummed packets handling")
Signed-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Link: https://patch.msgid.link/20251111090828.23186-1-xuanzhuo@linux.alibaba.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/virtio_net.c