All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stanislav Fomichev <stfomichev@gmail.com>
To: Daniel Borkmann <daniel@iogearbox.net>
Cc: netdev@vger.kernel.org, bpf@vger.kernel.org, kuba@kernel.org,
	davem@davemloft.net, razor@blackwall.org, pabeni@redhat.com,
	willemb@google.com, sdf@fomichev.me, john.fastabend@gmail.com,
	martin.lau@kernel.org, jordan@jrife.io,
	maciej.fijalkowski@intel.com, magnus.karlsson@intel.com,
	dw@davidwei.uk, toke@redhat.com, yangzhenze@bytedance.com,
	wangdongdong.6@bytedance.com
Subject: Re: [PATCH net-next v7 01/16] net: Add queue-create operation
Date: Sun, 18 Jan 2026 17:43:58 -0800	[thread overview]
Message-ID: <aW2MXiopZOUZLgSE@mini-arch> (raw)
In-Reply-To: <20260115082603.219152-2-daniel@iogearbox.net>

On 01/15, Daniel Borkmann wrote:
> Add a ynl netdev family operation called queue-create that creates a
> new queue on a netdevice:
> 
>       name: queue-create
>       attribute-set: queue
>       flags: [admin-perm]
>       do:
>         request:
>           attributes:
>             - ifindex
>             - type
>             - lease
>         reply: &queue-create-op
>           attributes:
>             - id
> 
> This is a generic operation such that it can be extended for various
> use cases in future. Right now it is mandatory to specify ifindex,
> the queue type which is enforced to rx and a lease. The newly created
> queue id is returned to the caller.
> 
> A queue from a virtual device can have a lease which refers to another
> queue from a physical device. This is useful for memory providers
> and AF_XDP operations which take an ifindex and queue id to allow
> applications to bind against virtual devices in containers. The lease
> couples both queues together and allows to proxy the operations from
> a virtual device in a container to the physical device.
> 
> In future, the nested lease attribute can be lifted and made optional
> for other use-cases such as dynamic queue creation for physical
> netdevs. The lack of lease and the specification of the physical
> device as an ifindex will imply that we need a real queue to be
> allocated. Similarly, the queue type enforcement to rx can then be
> lifted as well to support tx.
> 
> An early implementation had only driver-specific integration [0], but
> in order for other virtual devices to reuse, it makes sense to have
> this as a generic API in core net.
> 
> For leasing queues, the virtual netdev must have real_num_rx_queue
> less than num_rx_queues at the time of calling queue-create. The
> queue-type must be rx as only rx queues are supported for leasing
> for now. We also enforce that the queue-create ifindex must point
> to a virtual device, and that the nested lease attribute's ifindex
> must point to a physical device. The nested lease attribute set
> contains a netns-id attribute which is currently only intended for
> dumping as part of the queue-get operation. Also, it is modeled as
> an s32 type similarly as done elsewhere in the stack.
> 
> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
> Co-developed-by: David Wei <dw@davidwei.uk>
> Signed-off-by: David Wei <dw@davidwei.uk>
> Link: https://bpfconf.ebpf.io/bpfconf2025/bpfconf2025_material/lsfmmbpf_2025_netkit_borkmann.pdf [0]

Acked-by: Stanislav Fomichev <sdf@fomichev.me>

  reply	other threads:[~2026-01-19  1:44 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-01-15  8:25 [PATCH net-next v7 00/16] netkit: Support for io_uring zero-copy and AF_XDP Daniel Borkmann
2026-01-15  8:25 ` [PATCH net-next v7 01/16] net: Add queue-create operation Daniel Borkmann
2026-01-19  1:43   ` Stanislav Fomichev [this message]
2026-01-19 14:20   ` Nikolay Aleksandrov
2026-01-15  8:25 ` [PATCH net-next v7 02/16] net: Implement netdev_nl_queue_create_doit Daniel Borkmann
2026-01-19  1:44   ` Stanislav Fomichev
2026-01-19 14:20   ` Nikolay Aleksandrov
2026-01-15  8:25 ` [PATCH net-next v7 03/16] net: Add lease info to queue-get response Daniel Borkmann
2026-01-19  1:44   ` Stanislav Fomichev
2026-01-15  8:25 ` [PATCH net-next v7 04/16] net, ethtool: Disallow leased real rxqs to be resized Daniel Borkmann
2026-01-19  1:44   ` Stanislav Fomichev
2026-01-15  8:25 ` [PATCH net-next v7 05/16] net: Proxy net_mp_{open,close}_rxq for leased queues Daniel Borkmann
2026-01-19  1:44   ` Stanislav Fomichev
2026-01-21  2:04   ` Jakub Kicinski
2026-01-21  3:44     ` David Wei
2026-01-15  8:25 ` [PATCH net-next v7 06/16] net: Proxy netdev_queue_get_dma_dev " Daniel Borkmann
2026-01-19  1:45   ` Stanislav Fomichev
2026-01-19 14:21   ` Nikolay Aleksandrov
2026-01-15  8:25 ` [PATCH net-next v7 07/16] xsk: Extend xsk_rcv_check validation Daniel Borkmann
2026-01-19  1:45   ` Stanislav Fomichev
2026-01-19 14:21   ` Nikolay Aleksandrov
2026-01-15  8:25 ` [PATCH net-next v7 08/16] xsk: Proxy pool management for leased queues Daniel Borkmann
2026-01-19  1:45   ` Stanislav Fomichev
2026-01-19 14:22   ` Nikolay Aleksandrov
2026-01-15  8:25 ` [PATCH net-next v7 09/16] netkit: Add single device mode for netkit Daniel Borkmann
2026-01-15  8:25 ` [PATCH net-next v7 10/16] netkit: Implement rtnl_link_ops->alloc and ndo_queue_create Daniel Borkmann
2026-01-15  8:25 ` [PATCH net-next v7 11/16] netkit: Add netkit notifier to check for unregistering devices Daniel Borkmann
2026-01-19 14:22   ` Nikolay Aleksandrov
2026-01-15  8:25 ` [PATCH net-next v7 12/16] netkit: Add xsk support for af_xdp applications Daniel Borkmann
2026-01-15  8:26 ` [PATCH net-next v7 13/16] selftests/net: Add bpf skb forwarding program Daniel Borkmann
2026-01-19  1:45   ` Stanislav Fomichev
2026-01-19 14:23   ` Nikolay Aleksandrov
2026-01-15  8:26 ` [PATCH net-next v7 14/16] selftests/net: Add env for container based tests Daniel Borkmann
2026-01-19  1:46   ` Stanislav Fomichev
2026-01-19 14:23   ` Nikolay Aleksandrov
2026-01-15  8:26 ` [PATCH net-next v7 15/16] selftests/net: Make NetDrvContEnv support queue leasing Daniel Borkmann
2026-01-19  1:46   ` Stanislav Fomichev
2026-01-19 14:23   ` Nikolay Aleksandrov
2026-01-21  1:51   ` Jakub Kicinski
2026-01-21  1:57     ` David Wei
2026-01-15  8:26 ` [PATCH net-next v7 16/16] selftests/net: Add netkit container tests Daniel Borkmann
2026-01-19  1:46   ` Stanislav Fomichev
2026-01-19 14:25   ` Nikolay Aleksandrov
2026-01-20 11:50 ` [PATCH net-next v7 00/16] netkit: Support for io_uring zero-copy and AF_XDP patchwork-bot+netdevbpf
2026-01-21  2:08   ` Jakub Kicinski
2026-01-21  3:46     ` David Wei

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=aW2MXiopZOUZLgSE@mini-arch \
    --to=stfomichev@gmail.com \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=dw@davidwei.uk \
    --cc=john.fastabend@gmail.com \
    --cc=jordan@jrife.io \
    --cc=kuba@kernel.org \
    --cc=maciej.fijalkowski@intel.com \
    --cc=magnus.karlsson@intel.com \
    --cc=martin.lau@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=razor@blackwall.org \
    --cc=sdf@fomichev.me \
    --cc=toke@redhat.com \
    --cc=wangdongdong.6@bytedance.com \
    --cc=willemb@google.com \
    --cc=yangzhenze@bytedance.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.