All of lore.kernel.org
 help / color / mirror / Atom feed
From: Martin KaFai Lau <martin.lau@linux.dev>
To: Jesper Dangaard Brouer <hawk@kernel.org>
Cc: Jakub Kicinski <kuba@kernel.org>,
	Lorenzo Bianconi <lorenzo@kernel.org>,
	Stanislav Fomichev <stfomichev@gmail.com>,
	bpf@vger.kernel.org, netdev@vger.kernel.org,
	Alexei Starovoitov <ast@kernel.org>,
	Daniel Borkmann <borkmann@iogearbox.net>,
	Eric Dumazet <eric.dumazet@gmail.com>,
	"David S. Miller" <davem@davemloft.net>,
	Paolo Abeni <pabeni@redhat.com>,
	sdf@fomichev.me, kernel-team@cloudflare.com,
	arthur@arthurfabre.com, jakub@cloudflare.com,
	Jesse Brandeburg <jbrandeburg@cloudflare.com>,
	Andrew Rzeznik <arzeznik@cloudflare.com>
Subject: Re: [PATCH bpf-next V2 0/7] xdp: Allow BPF to set RX hints for XDP_REDIRECTed packets
Date: Tue, 12 Aug 2025 19:59:49 -0700	[thread overview]
Message-ID: <86294c15-523e-4ef5-a67c-d4068607da3f@linux.dev> (raw)
In-Reply-To: <20a3558f-43c5-46a2-8395-c6d966ea5caf@kernel.org>

On 8/7/25 12:07 PM, Jesper Dangaard Brouer wrote:
> Yan and I have previously[1] (Oct 2024) explored adding a common
> callback to XDP drivers, which have access to both the xdp_buff and SKB
> in the function call. (Ignore the GRO disable bit, focus on callback)
> 
> We named the functions: xdp_buff_fixup_skb_offloading() and
>   xdp_frame_fixup_skb_offloading()
> We implemented the driver changes for [bnxt], [mlx5], [ice] and [veth].
> 
> What do you think of the idea of adding a BPF-hook, at this callback,
> which have access to both the XDP and SKB pointer.
> That would allow us to implement your idea, right?
> 
> [1] https://lore.kernel.org/all/cover.1718919473.git.yan@cloudflare.com/#r
> 
> [bnxt] https://lore.kernel.org/all/ 
> f804c22ca168ec3aedb0ee754bfbee71764eb894.1718919473.git.yan@cloudflare.com/
> 
> [mlx5] https://lore.kernel.org/ 
> all/17595a278ee72964b83c0bd0b502152aa025f600.1718919473.git.yan@cloudflare.com/
> 
> [ice] https://lore.kernel.org/all/ 
> a9eba425bfd3bfac7e7be38fe86ad5dbff3ae01f.1718919473.git.yan@cloudflare.com/
> 
> [veth] https://lore.kernel.org/all/ 
> b7c75daecca9c4e36ef79af683d288653a9b5b82.1718919473.git.yan@cloudflare.com/

It should not need a new BPF-hook to consume info produced by an earlier xdp 
prog. Instead, the same and existing xdp prog can call a kfunc to directly 
create the skb and update the skb fields. The kfunc could be driver specific, 
like the current .xmo_rx_xxx.


  reply	other threads:[~2025-08-13  3:00 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-02 14:58 [PATCH bpf-next V2 0/7] xdp: Allow BPF to set RX hints for XDP_REDIRECTed packets Jesper Dangaard Brouer
2025-07-02 14:58 ` [PATCH bpf-next V2 1/7] net: xdp: Add xdp_rx_meta structure Jesper Dangaard Brouer
2025-07-17  9:19   ` Jakub Sitnicki
2025-07-17 14:40     ` Jesper Dangaard Brouer
2025-07-18 10:33       ` Jakub Sitnicki
2025-07-02 14:58 ` [PATCH bpf-next V2 2/7] selftests/bpf: Adjust test for maximum packet size in xdp_do_redirect Jesper Dangaard Brouer
2025-07-02 14:58 ` [PATCH bpf-next V2 3/7] net: xdp: Add kfuncs to store hw metadata in xdp_buff Jesper Dangaard Brouer
2025-07-03 11:41   ` Jesper Dangaard Brouer
2025-07-03 12:26     ` Lorenzo Bianconi
2025-07-02 14:58 ` [PATCH bpf-next V2 4/7] net: xdp: Set skb hw metadata from xdp_frame Jesper Dangaard Brouer
2025-07-02 14:58 ` [PATCH bpf-next V2 5/7] net: veth: Read xdp metadata from rx_meta struct if available Jesper Dangaard Brouer
2025-07-17 12:11   ` Jakub Sitnicki
2025-07-02 14:58 ` [PATCH bpf-next V2 6/7] bpf: selftests: Add rx_meta store kfuncs selftest Jesper Dangaard Brouer
2025-07-23  9:24   ` Bouska, Zdenek
2025-07-02 14:58 ` [PATCH bpf-next V2 7/7] net: xdp: update documentation for xdp-rx-metadata.rst Jesper Dangaard Brouer
2025-07-02 16:05 ` [PATCH bpf-next V2 0/7] xdp: Allow BPF to set RX hints for XDP_REDIRECTed packets Stanislav Fomichev
2025-07-03 11:17   ` Jesper Dangaard Brouer
2025-07-07 14:40     ` Stanislav Fomichev
2025-07-09  9:31       ` Lorenzo Bianconi
2025-07-11 16:04         ` Stanislav Fomichev
2025-07-16 11:17           ` Lorenzo Bianconi
2025-07-16 21:20             ` Jakub Kicinski
2025-07-17 13:08               ` Jesper Dangaard Brouer
2025-07-18  1:25                 ` Jakub Kicinski
2025-07-18 10:56                   ` Jesper Dangaard Brouer
2025-07-22  1:13                     ` Jakub Kicinski
2025-07-28 10:53                       ` Lorenzo Bianconi
2025-07-28 16:29                         ` Jakub Kicinski
2025-07-29 11:15                           ` Jesper Dangaard Brouer
2025-07-29 19:47                             ` Martin KaFai Lau
2025-07-31 16:27                               ` Jesper Dangaard Brouer
2025-08-01 20:38                                 ` Jakub Kicinski
2025-08-04 13:18                                   ` Jesper Dangaard Brouer
2025-08-06  0:28                                     ` Jakub Kicinski
2025-08-07 18:26                                       ` Jesper Dangaard Brouer
2025-08-06  1:24                                     ` Martin KaFai Lau
2025-08-07 19:07                                       ` Jesper Dangaard Brouer
2025-08-13  2:59                                         ` Martin KaFai Lau [this message]
2025-07-31 21:18                           ` Lorenzo Bianconi
2025-08-01 20:40                             ` Jakub Kicinski
2025-08-05 13:18                               ` Lorenzo Bianconi
2025-08-05 23:54                                 ` Jakub Kicinski
2025-07-18  9:55                 ` Lorenzo Bianconi

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=86294c15-523e-4ef5-a67c-d4068607da3f@linux.dev \
    --to=martin.lau@linux.dev \
    --cc=arthur@arthurfabre.com \
    --cc=arzeznik@cloudflare.com \
    --cc=ast@kernel.org \
    --cc=borkmann@iogearbox.net \
    --cc=bpf@vger.kernel.org \
    --cc=davem@davemloft.net \
    --cc=eric.dumazet@gmail.com \
    --cc=hawk@kernel.org \
    --cc=jakub@cloudflare.com \
    --cc=jbrandeburg@cloudflare.com \
    --cc=kernel-team@cloudflare.com \
    --cc=kuba@kernel.org \
    --cc=lorenzo@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=sdf@fomichev.me \
    --cc=stfomichev@gmail.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.