From: Alexander Lobakin <aleksander.lobakin@intel.com>
To: "David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>
Cc: "Alexander Lobakin" <aleksander.lobakin@intel.com>,
"Toke Høiland-Jørgensen" <toke@redhat.com>,
"Alexei Starovoitov" <ast@kernel.org>,
"Daniel Borkmann" <daniel@iogearbox.net>,
"John Fastabend" <john.fastabend@gmail.com>,
"Andrii Nakryiko" <andrii@kernel.org>,
"Maciej Fijalkowski" <maciej.fijalkowski@intel.com>,
"Stanislav Fomichev" <sdf@fomichev.me>,
"Magnus Karlsson" <magnus.karlsson@intel.com>,
nex.sw.ncis.osdt.itp.upstreaming@intel.com, bpf@vger.kernel.org,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH net-next v4 14/19] xsk: allow attaching XSk pool via xdp_rxq_info_reg_mem_model()
Date: Thu, 7 Nov 2024 17:10:21 +0100 [thread overview]
Message-ID: <20241107161026.2903044-15-aleksander.lobakin@intel.com> (raw)
In-Reply-To: <20241107161026.2903044-1-aleksander.lobakin@intel.com>
When you register an XSk pool as XDP Rxq info memory model, you then
need to manually attach it after the registration.
Let the user combine both actions into one by just passing a pointer
to the pool directly to xdp_rxq_info_reg_mem_model(), which will take
care of calling xsk_pool_set_rxq_info(). This looks similar to how a
&page_pool gets registered and reduce repeating driver code.
Acked-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Reviewed-by: Toke Høiland-Jørgensen <toke@redhat.com>
Signed-off-by: Alexander Lobakin <aleksander.lobakin@intel.com>
---
net/core/xdp.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/net/core/xdp.c b/net/core/xdp.c
index 3a9a3c14b080..f046b93faaa0 100644
--- a/net/core/xdp.c
+++ b/net/core/xdp.c
@@ -358,6 +358,9 @@ int xdp_rxq_info_reg_mem_model(struct xdp_rxq_info *xdp_rxq,
if (IS_ERR(xdp_alloc))
return PTR_ERR(xdp_alloc);
+ if (type == MEM_TYPE_XSK_BUFF_POOL && allocator)
+ xsk_pool_set_rxq_info(allocator, xdp_rxq);
+
if (trace_mem_connect_enabled() && xdp_alloc)
trace_mem_connect(xdp_alloc, xdp_rxq);
return 0;
--
2.47.0
next prev parent reply other threads:[~2024-11-07 16:14 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-07 16:10 [PATCH net-next v4 00/19] xdp: a fistful of generic changes (+libeth_xdp) Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 01/19] jump_label: export static_key_slow_{inc,dec}_cpuslocked() Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 02/19] skbuff: allow 2-4-argument skb_frag_dma_map() Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 03/19] unroll: add generic loop unroll helpers Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 04/19] bpf, xdp: constify some bpf_prog * function arguments Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 05/19] xdp, xsk: constify read-only arguments of some static inline helpers Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 06/19] xdp: allow attaching already registered memory model to xdp_rxq_info Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 07/19] xdp: register system page pool as an XDP memory model Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 08/19] page_pool: make page_pool_put_page_bulk() actually handle array of pages Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 09/19] page_pool: allow mixing PPs within one bulk Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 10/19] xdp: get rid of xdp_frame::mem.id Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 11/19] xdp: add generic xdp_buff_add_frag() Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 12/19] xdp: add generic xdp_build_skb_from_buff() Alexander Lobakin
2024-11-11 16:39 ` Toke Høiland-Jørgensen
2024-11-12 15:20 ` Alexander Lobakin
2024-11-13 11:13 ` Toke Høiland-Jørgensen
2024-11-13 11:13 ` Toke Høiland-Jørgensen
2024-11-07 16:10 ` [PATCH net-next v4 13/19] xsk: align &xdp_buff_xsk harder Alexander Lobakin
2024-11-07 16:10 ` Alexander Lobakin [this message]
2024-11-07 16:10 ` [PATCH net-next v4 15/19] xsk: make xsk_buff_add_frag really add a frag via __xdp_buff_add_frag() Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 16/19] xsk: add generic XSk &xdp_buff -> skb conversion Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 17/19] xsk: add helper to get &xdp_desc's DMA and meta pointer in one go Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 18/19] libeth: support native XDP and register memory model Alexander Lobakin
2024-11-07 16:10 ` [PATCH net-next v4 19/19] libeth: add a couple of XDP helpers (libeth_xdp) Alexander Lobakin
2024-11-08 16:27 ` [PATCH net-next v4 00/19] xdp: a fistful of generic changes (+libeth_xdp) Jakub Kicinski
2024-11-12 15:23 ` Alexander Lobakin
2024-11-13 2:05 ` Jakub Kicinski
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=20241107161026.2903044-15-aleksander.lobakin@intel.com \
--to=aleksander.lobakin@intel.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=john.fastabend@gmail.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=maciej.fijalkowski@intel.com \
--cc=magnus.karlsson@intel.com \
--cc=netdev@vger.kernel.org \
--cc=nex.sw.ncis.osdt.itp.upstreaming@intel.com \
--cc=pabeni@redhat.com \
--cc=sdf@fomichev.me \
--cc=toke@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®