[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a06c96fa-1f0d-46f2-be8e-debc3933e573@iogearbox.net>
Date: Thu, 23 Oct 2025 14:46:39 +0200
From: Daniel Borkmann <daniel@...earbox.net>
To: Paolo Abeni <pabeni@...hat.com>, netdev@...r.kernel.org
Cc: bpf@...r.kernel.org, kuba@...nel.org, davem@...emloft.net,
razor@...ckwall.org, willemb@...gle.com, sdf@...ichev.me,
john.fastabend@...il.com, martin.lau@...nel.org, jordan@...fe.io,
maciej.fijalkowski@...el.com, magnus.karlsson@...el.com, dw@...idwei.uk,
toke@...hat.com, yangzhenze@...edance.com, wangdongdong.6@...edance.com
Subject: Re: [PATCH net-next v3 02/15] net: Implement
netdev_nl_bind_queue_doit
On 10/23/25 12:17 PM, Paolo Abeni wrote:
> On 10/20/25 6:23 PM, Daniel Borkmann wrote:
>> + tmp_rxq = __netif_get_rx_queue(dst_dev, dst_dev->real_num_rx_queues - 1);
>> + if (tmp_rxq->peer && tmp_rxq->peer->dev != src_dev) {
>> + err = -EOPNOTSUPP;
>> + NL_SET_ERR_MSG(info->extack,
>> + "Binding multiple queues from difference source devices not supported");
>> + goto err_unlock_src_dev;
>> + }
>
> Why checking a single queue on dst/virtual device? Should the above
> check be repeated for all the real_num_rx_queues?
We could, but this is actually already enough. For example, initially the device
has no phys binding at all (tmp_rxq->peer is NULL). Then we bind the first time.
In the second request, we reject tmp_rxq->peer->dev != src_dev, and enforce
binding to the same device again as previously, and then it repeats for subsequent
bind requests.
Thanks,
Daniel
Powered by blists - more mailing lists