mbox series

[bpf-next,0/2] xsk: support redirect to any socket bound to the same umem

Message ID 20240205123553.22180-1-magnus.karlsson@gmail.com (mailing list archive)
Headers show
Series xsk: support redirect to any socket bound to the same umem | expand

Message

Magnus Karlsson Feb. 5, 2024, 12:35 p.m. UTC
This patch set adds support for directing a packet to any socket bound
to the same umem. This makes it possible to use the XDP program to
select what socket the packet should be received on. The user can
populate the XSKMAP with various sockets and as long as they share the
same umem, the XDP program can pick any one of them.

The implementation is straight-forward. Instead of testing that the
incoming packet is targeting the same device and queue id as the
socket is bound to, just check that the umem the packet was received
on is the same as the socket we want it to be received on. This
guarantees that the redirect is legal as it is already in the correct
umem.

Patch #1 implements the feature and patch #2 adds documentation.

Thanks: Magnus

Magnus Karlsson (2):
  xsk: support redirect to any socket bound to the same umem
  xsk: document ability to redirect to any socket bound to the same umem

 Documentation/networking/af_xdp.rst | 33 +++++++++++++++++------------
 net/xdp/xsk.c                       |  5 ++++-
 2 files changed, 23 insertions(+), 15 deletions(-)


base-commit: 2a79690eae953daaac232f93e6c5ac47ac539f2d
--
2.42.0

Comments

patchwork-bot+netdevbpf@kernel.org Feb. 6, 2024, 4:10 a.m. UTC | #1
Hello:

This series was applied to bpf/bpf-next.git (master)
by Alexei Starovoitov <ast@kernel.org>:

On Mon,  5 Feb 2024 13:35:49 +0100 you wrote:
> This patch set adds support for directing a packet to any socket bound
> to the same umem. This makes it possible to use the XDP program to
> select what socket the packet should be received on. The user can
> populate the XSKMAP with various sockets and as long as they share the
> same umem, the XDP program can pick any one of them.
> 
> The implementation is straight-forward. Instead of testing that the
> incoming packet is targeting the same device and queue id as the
> socket is bound to, just check that the umem the packet was received
> on is the same as the socket we want it to be received on. This
> guarantees that the redirect is legal as it is already in the correct
> umem.
> 
> [...]

Here is the summary with links:
  - [bpf-next,1/2] xsk: support redirect to any socket bound to the same umem
    https://git.kernel.org/bpf/bpf-next/c/2863d665ea41
  - [bpf-next,2/2] xsk: document ability to redirect to any socket bound to the same umem
    https://git.kernel.org/bpf/bpf-next/c/968595a93669

You are awesome, thank you!