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
..
2026-02-11 13:44:47 +01:00
2026-02-09 12:29:22 +01:00
2026-03-17 20:30:23 +01:00
2026-04-08 19:38:52 -07:00
2026-03-10 11:32:31 -05:00
2026-03-20 14:18:56 +01:00
2026-03-02 10:41:07 +01:00
2026-03-02 20:52:21 +00:00
2026-02-19 07:26:26 -07:00
2026-02-17 11:00:43 +01:00
2026-02-08 00:13:33 -08:00
2026-02-16 11:05:44 -08:00
2026-03-18 19:08:50 -07:00
2026-02-23 13:45:50 +01:00
2026-04-08 07:51:26 +02:00
2026-04-08 19:38:52 -07:00
2026-02-10 19:01:45 -08:00
2026-03-15 20:36:05 -05:00
2026-03-24 15:00:08 +00:00
2026-02-12 17:49:33 -08:00
2026-03-14 09:43:12 -07:00
2026-02-21 17:09:51 -08:00
2026-03-02 18:55:21 -08:00
2026-02-11 19:31:52 -08:00
2026-02-23 16:09:00 -08:00
2026-02-09 18:14:52 -08:00
2026-02-16 10:21:01 -07:00
2026-02-12 04:23:53 -07:00
2026-02-27 15:39:00 -08:00
2026-02-27 15:39:00 -08:00
2026-03-31 16:01:13 -07:00
2026-03-10 16:01:48 -07:00
2026-02-14 07:43:27 -07:00
2026-03-24 10:21:40 -10:00
2026-02-15 08:18:57 -08:00
2026-02-12 11:32:37 -08:00
2026-02-21 01:01:14 -08:00
2026-02-10 17:02:23 -08:00
2026-03-13 09:15:58 +01:00
2026-02-14 11:09:47 +01:00
2026-02-18 20:50:32 -08:00
2026-02-21 17:09:51 -08:00
2026-03-21 17:36:33 -07:00
2026-02-12 15:42:58 -08:00
2026-03-17 20:30:23 +01:00
2026-02-12 15:52:39 -08:00
2026-02-21 17:09:51 -08:00
2026-02-13 14:51:39 -08:00
2026-03-25 08:01:21 +01:00
2026-04-03 16:48:01 -07:00
2026-03-16 19:29:45 -07:00
2026-03-23 17:59:54 -07:00
2026-03-07 15:03:14 -08:00
2026-02-14 11:09:47 +01:00
2026-02-09 15:13:05 -08:00
2026-02-12 12:13:01 -08:00
2026-02-18 10:45:36 -08:00
2026-02-19 09:12:05 +01:00
2026-02-17 23:11:40 -08:00
2026-02-19 15:21:22 -05:00
2026-02-21 17:09:51 -08:00
2026-02-26 17:30:32 +01:00
2026-02-26 15:27:41 -08:00
2026-03-11 15:26:47 +01:00
2026-02-10 16:41:59 -08:00
2026-02-12 15:42:57 -08:00
2026-02-18 20:50:32 -08:00
2026-03-29 11:21:23 -07:00
2026-03-13 14:48:15 +01:00
2026-03-06 10:52:11 +01:00
2026-03-25 20:56:56 +01:00
2026-03-06 10:46:26 +01:00
2026-03-25 21:22:02 +01:00
2026-03-16 19:29:45 -07:00
2026-02-26 11:41:00 +01:00
2026-03-23 17:51:59 -07:00
2026-03-29 11:21:23 -07:00
2026-02-11 21:03:39 +01:00
2026-02-10 13:39:37 -08:00
2026-03-19 15:09:48 -06:00
2026-02-21 17:09:51 -08:00
2026-03-17 13:58:45 +01:00
2026-02-09 18:14:52 -08:00
2026-03-27 09:07:13 +01:00
2026-02-12 16:33:05 -08:00
2026-03-11 17:53:37 -07:00
2026-02-10 16:30:29 -08:00
2026-02-11 08:55:52 +01:00
2026-02-26 10:45:49 +01:00
2026-03-11 18:01:55 +01:00
2026-03-27 20:48:37 -07:00
2026-02-12 17:12:43 -08:00
2026-02-14 11:09:46 +01:00
2026-04-01 10:19:41 +02:00
2026-02-08 00:13:32 -08:00
2026-02-24 11:13:26 -08:00
2026-03-12 11:29:11 +01:00
2026-03-14 12:23:02 -07:00
2026-02-18 20:50:32 -08:00
2026-02-12 15:42:53 -08:00
2026-03-26 16:13:48 +01:00
2026-02-27 17:23:37 -08:00
2026-04-02 18:03:03 -07:00
2026-03-02 11:51:51 -05:00
2026-02-12 15:42:59 -08:00
2026-03-04 09:44:22 -08:00
2026-04-08 13:18:57 -07:00
2026-03-04 09:44:24 -08:00
2026-02-12 12:13:01 -08:00
2026-02-12 12:13:01 -08:00
2026-03-27 17:01:36 +01:00
2026-03-02 18:49:41 -08:00
2026-02-10 16:30:29 -08:00
2026-03-05 18:50:05 -08:00
2026-04-09 18:21:47 -07:00
2026-03-29 11:21:24 -07:00
2026-03-26 15:18:45 +01:00
2026-02-27 22:00:08 +01:00
2026-02-20 17:31:55 -05:00
2026-03-10 08:20:29 -07:00
2026-02-24 15:46:31 -08:00
2026-03-20 14:18:56 +01:00
2026-02-11 19:31:52 -08:00
2026-02-12 16:33:05 -08:00
2026-02-11 12:45:40 -05:00
2026-02-12 15:43:00 -08:00
2026-03-14 12:23:02 -07:00
2026-02-10 11:39:30 +01:00
2026-02-10 11:39:31 +01:00
2026-02-10 11:39:30 +01:00
2026-03-17 20:30:57 +01:00
2026-02-23 14:08:17 +01:00
2026-03-17 16:18:48 -07:00
2026-03-27 17:14:31 -07:00
2026-03-04 11:45:45 +01:00
2026-02-16 13:41:38 -08:00
2026-03-03 22:25:32 -05:00
2026-02-23 11:19:19 +01:00
2026-03-11 12:01:07 +01:00
2026-02-23 11:19:19 +01:00
2026-03-11 12:01:06 +01:00
2026-03-20 12:06:01 +01:00
2026-03-12 15:34:15 +01:00
2026-02-12 15:42:58 -08:00
2026-04-03 14:36:48 -07:00
2026-02-21 01:02:52 -08:00
2026-02-26 17:30:32 +01:00
2026-03-04 17:53:34 -08:00
2026-03-25 09:00:05 -07:00
2026-03-25 08:59:59 -07:00
2026-03-27 20:57:38 -07:00
2026-02-11 10:14:35 +01:00
2026-02-10 17:02:23 -08:00
2026-03-14 08:01:49 -07:00
2026-03-02 10:04:19 +01:00
2026-02-27 16:11:50 -08:00
2026-02-19 15:25:11 -05:00
2026-03-31 16:01:13 -07:00
2026-02-12 15:43:02 -08:00
2026-02-15 10:20:37 -08:00
2026-02-12 12:13:01 -08:00
2026-03-10 12:47:56 -07:00
2026-03-13 18:57:45 -07:00
2026-02-17 09:11:04 -08:00
2026-04-02 09:43:26 +02:00
2026-03-24 11:12:08 +01:00
2026-02-12 11:32:37 -08:00
2026-02-12 12:13:01 -08:00