mbox series

[bpf-next,v6,0/4] xfrm: interface: Add unstable helpers for XFRM metadata

Message ID 20221203084659.1837829-1-eyal.birger@gmail.com (mailing list archive)
Headers show
Series xfrm: interface: Add unstable helpers for XFRM metadata | expand

Message

Eyal Birger Dec. 3, 2022, 8:46 a.m. UTC
This patch series adds xfrm metadata helpers using the unstable kfunc
call interface for the TC-BPF hooks.

This allows steering traffic towards different IPsec connections based
on logic implemented in bpf programs.

The helpers are integrated into the xfrm_interface module. For this
purpose the main functionality of this module is moved to
xfrm_interface_core.c.

---

changes in v6: fix sparse warning in patch 2
changes in v5:
  - avoid cleanup of percpu dsts as detailed in patch 2
changes in v3:
  - tag bpf-next tree instead of ipsec-next
  - add IFLA_XFRM_COLLECT_METADATA sync patch

Eyal Birger (4):
  xfrm: interface: rename xfrm_interface.c to xfrm_interface_core.c
  xfrm: interface: Add unstable helpers for setting/getting XFRM
    metadata from TC-BPF
  tools: add IFLA_XFRM_COLLECT_METADATA to uapi/linux/if_link.h
  selftests/bpf: add xfrm_info tests

 include/net/dst_metadata.h                    |   1 +
 include/net/xfrm.h                            |  17 +
 net/core/dst.c                                |   8 +-
 net/core/filter.c                             |   9 +
 net/xfrm/Makefile                             |   8 +
 net/xfrm/xfrm_interface_bpf.c                 | 115 ++++++
 ...xfrm_interface.c => xfrm_interface_core.c} |  14 +
 tools/include/uapi/linux/if_link.h            |   1 +
 tools/testing/selftests/bpf/DENYLIST.s390x    |   1 +
 tools/testing/selftests/bpf/config            |   2 +
 .../selftests/bpf/prog_tests/xfrm_info.c      | 365 ++++++++++++++++++
 .../selftests/bpf/progs/bpf_tracing_net.h     |   3 +
 tools/testing/selftests/bpf/progs/xfrm_info.c |  35 ++
 13 files changed, 577 insertions(+), 2 deletions(-)
 create mode 100644 net/xfrm/xfrm_interface_bpf.c
 rename net/xfrm/{xfrm_interface.c => xfrm_interface_core.c} (98%)
 create mode 100644 tools/testing/selftests/bpf/prog_tests/xfrm_info.c
 create mode 100644 tools/testing/selftests/bpf/progs/xfrm_info.c

Comments

patchwork-bot+netdevbpf@kernel.org Dec. 6, 2022, 7:10 a.m. UTC | #1
Hello:

This series was applied to bpf/bpf-next.git (master)
by Martin KaFai Lau <martin.lau@kernel.org>:

On Sat,  3 Dec 2022 10:46:55 +0200 you wrote:
> This patch series adds xfrm metadata helpers using the unstable kfunc
> call interface for the TC-BPF hooks.
> 
> This allows steering traffic towards different IPsec connections based
> on logic implemented in bpf programs.
> 
> The helpers are integrated into the xfrm_interface module. For this
> purpose the main functionality of this module is moved to
> xfrm_interface_core.c.
> 
> [...]

Here is the summary with links:
  - [bpf-next,v6,1/4] xfrm: interface: rename xfrm_interface.c to xfrm_interface_core.c
    https://git.kernel.org/bpf/bpf-next/c/ee9a113ab634
  - [bpf-next,v6,2/4] xfrm: interface: Add unstable helpers for setting/getting XFRM metadata from TC-BPF
    https://git.kernel.org/bpf/bpf-next/c/94151f5aa966
  - [bpf-next,v6,3/4] tools: add IFLA_XFRM_COLLECT_METADATA to uapi/linux/if_link.h
    https://git.kernel.org/bpf/bpf-next/c/4f4ac4d9106e
  - [bpf-next,v6,4/4] selftests/bpf: add xfrm_info tests
    https://git.kernel.org/bpf/bpf-next/c/90a3a05eb33f

You are awesome, thank you!