]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
net: Proxy net_mp_{open,close}_rxq for leased queues
authorDavid Wei <dw@davidwei.uk>
Thu, 15 Jan 2026 08:25:52 +0000 (09:25 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 20 Jan 2026 10:58:49 +0000 (11:58 +0100)
commit0caa9a8ddec3bf87bffb0eb99635068ddddce35d
tree1ffe5823baeac52b2614265954ea80c9fd30297a
parentff8889ff9107f01346ba0d2e580ecadfa5fac5c5
net: Proxy net_mp_{open,close}_rxq for leased queues

When a process in a container wants to setup a memory provider, it will
use the virtual netdev and a leased rxq, and call net_mp_{open,close}_rxq
to try and restart the queue. At this point, proxy the queue restart on
the real rxq in the physical netdev.

For memory providers (io_uring zero-copy rx and devmem), it causes the
real rxq in the physical netdev to be filled from a memory provider that
has DMA mapped memory from a process within a container.

Signed-off-by: David Wei <dw@davidwei.uk>
Co-developed-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Reviewed-by: Nikolay Aleksandrov <razor@blackwall.org>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
Link: https://patch.msgid.link/20260115082603.219152-6-daniel@iogearbox.net
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
include/net/netdev_rx_queue.h
include/net/page_pool/memory_provider.h
net/core/netdev_rx_queue.c