[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f103da72-0973-4a45-af81-ec1537422433@gmail.com>
Date: Wed, 24 Sep 2025 11:40:26 +0100
From: Mehdi Ben Hadj Khelifa <mehdi.benhadjkhelifa@...il.com>
To: Stanislav Fomichev <stfomichev@...il.com>
Cc: davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, donald.hunter@...il.com, andrew+netdev@...n.ch,
ast@...nel.org, daniel@...earbox.net, hawk@...nel.org,
john.fastabend@...il.com, matttbe@...nel.org, chuck.lever@...cle.com,
jdamato@...tly.com, skhawaja@...gle.com, dw@...idwei.uk,
mkarsten@...terloo.ca, yoong.siang.song@...el.com,
david.hunter.linux@...il.com, skhan@...uxfoundation.org, horms@...nel.org,
sdf@...ichev.me, netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
bpf@...r.kernel.org, linux-kernel-mentees@...ts.linuxfoundation.org
Subject: Re: [PATCH RFC 0/4] Add XDP RX queue index metadata via kfuncs
On 9/23/25 9:45 PM, Stanislav Fomichev wrote:
> On 09/23, Mehdi Ben Hadj Khelifa wrote:
>> ---
>> Mehdi Ben Hadj Khelifa (4):
>> netlink: specs: Add XDP RX queue index to XDP metadata
>> net: xdp: Add xmo_rx_queue_index callback
>> uapi: netdev: Add XDP RX queue index metadata flags
>> net: veth: Implement RX queue index XDP hint
>>
>> Documentation/netlink/specs/netdev.yaml | 5 +++++
>> drivers/net/veth.c | 12 ++++++++++++
>> include/net/xdp.h | 5 +++++
>> include/uapi/linux/netdev.h | 3 +++
>> net/core/xdp.c | 15 +++++++++++++++
>> tools/include/uapi/linux/netdev.h | 3 +++
>> 6 files changed, 43 insertions(+)
>> ---
>> base-commit: 07e27ad16399afcd693be20211b0dfae63e0615f
>> this is the commit of tag: v6.17-rc7 on the mainline.
>> This patch series is intended to make a base for setting
>> queue_index in the xdp_rxq_info struct in bpf/cpumap.c to
>> the right index. Although that part I still didn't figure
>> out yet,I m searching for my guidance to do that as well
>> as for the correctness of the patches in this series.
> But why do you need a kfunc getter? You can already get rxq index
> via xdp_md rx_queue_index.
Hi Stanislav, When i was looking at the available information or recent
similar patches to populate the queue_index in xdp_rxq_info inside of
the cpu map of an ebpf program to run xdp. i stumbled upon this:
https://lkml.rescloud.iu.edu/2506.1/02808.html
which suggests that in order to that, a struct called "xdp_rx_meta"
should be the route to do that. In my navigation of code i only found
the closest thing to that is xdp_rx_metadata which is an enum. I tried
to follow was done for other metadata there like timestamp in order to
see if that gets me closer to do that. which was stupid with the
information that i have now but for my lack of experience (this is my
first patch) i tried to reason with the code.So yeah, since xdp_md is
the structure for transfering metadata to ebpf programs that use xdp.
it's useless to have a kfunc to expose queue_index since it's already
present there. But how would one try to populate the queue_index in
xdp_rxq_info in cpu_map_bpf_prog_run_xdp()? Any sort of hints or guides
would be much appreciated.
Thank you for your time.
Best Regards,
Mehdi Ben Hadj Khelifa
Powered by blists - more mailing lists