linux/io_uring
Jakub Kicinski 1508922588 Merge branch 'netkit-support-for-io_uring-zero-copy-and-af_xdp'
Daniel Borkmann says:

====================
netkit: Support for io_uring zero-copy and AF_XDP

Containers use virtual netdevs to route traffic from a physical netdev
in the host namespace. They do not have access to the physical netdev
in the host and thus can't use memory providers or AF_XDP that require
reconfiguring/restarting queues in the physical netdev.

This patchset adds the concept of queue leasing to virtual netdevs that
allow containers to use memory providers and AF_XDP at native speed.
Leased queues are bound to a real queue in a physical netdev and act
as a proxy.

Memory providers and AF_XDP operations take an ifindex and queue id,
so containers would pass in an ifindex for a virtual netdev and a queue
id of a leased queue, which then gets proxied to the underlying real
queue.

We have implemented support for this concept in netkit and tested the
latter against Nvidia ConnectX-6 (mlx5) as well as Broadcom BCM957504
(bnxt_en) 100G NICs. For more details see the individual patches.
====================

Link: https://patch.msgid.link/20260402231031.447597-1-daniel@iogearbox.net
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-04-09 18:24:35 -07:00
..
Kconfig
Makefile
advise.c
advise.h
alloc_cache.c
alloc_cache.h
bpf_filter.c io_uring-7.0-20260312 2026-03-13 10:09:35 -07:00
bpf_filter.h
cancel.c
cancel.h
cmd_net.c
epoll.c
epoll.h
eventfd.c io_uring-7.0-20260312 2026-03-13 10:09:35 -07:00
eventfd.h
fdinfo.c io_uring/fdinfo: fix OOB read in SQE_MIXED wrap check 2026-03-26 20:28:28 -06:00
fdinfo.h
filetable.c
filetable.h
fs.c
fs.h
futex.c
futex.h
io-wq.c
io-wq.h
io_uring.c io_uring-7.0-20260403 2026-04-03 11:58:04 -07:00
io_uring.h io_uring: protect remaining lockless ctx->rings accesses with RCU 2026-04-01 08:34:11 -06:00
kbuf.c io_uring-7.0-20260320 2026-03-20 09:58:56 -07:00
kbuf.h
memmap.c
memmap.h
mock_file.c
msg_ring.c
msg_ring.h
napi.c
napi.h
net.c io_uring/net: fix slab-out-of-bounds read in io_bundle_nbufs() 2026-03-29 14:03:14 -06:00
net.h
nop.c
nop.h
notif.c
notif.h
opdef.c
opdef.h
openclose.c
openclose.h
poll.c io_uring-7.0-20260320 2026-03-20 09:58:56 -07:00
poll.h
query.c
query.h
refs.h
register.c io_uring-7.0-20260403 2026-04-03 11:58:04 -07:00
register.h
rsrc.c io_uring-7.0-20260403 2026-04-03 11:58:04 -07:00
rsrc.h
rw.c
rw.h
slist.h
splice.c
splice.h
sqpoll.c
sqpoll.h
statx.c
statx.h
sync.c
sync.h
tctx.c
tctx.h
timeout.c
timeout.h
truncate.c
truncate.h
tw.c io_uring: ensure ctx->rings is stable for task work flags manipulation 2026-03-11 14:35:16 -06:00
tw.h
uring_cmd.c
uring_cmd.h
wait.c io_uring: protect remaining lockless ctx->rings accesses with RCU 2026-04-01 08:34:11 -06:00
wait.h io_uring: protect remaining lockless ctx->rings accesses with RCU 2026-04-01 08:34:11 -06:00
waitid.c
waitid.h
xattr.c
xattr.h
zcrx.c net: Proxy netdev_queue_get_dma_dev for leased queues 2026-04-09 18:21:46 -07:00
zcrx.h