lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 5 Oct 2022 01:11:33 +0200 From: Daniel Borkmann <daniel@...earbox.net> To: bpf@...r.kernel.org Cc: razor@...ckwall.org, ast@...nel.org, andrii@...nel.org, martin.lau@...ux.dev, john.fastabend@...il.com, joannelkoong@...il.com, memxor@...il.com, toke@...hat.com, joe@...ium.io, netdev@...r.kernel.org, Daniel Borkmann <daniel@...earbox.net> Subject: [PATCH bpf-next 00/10] BPF link support for tc BPF programs This series adds BPF link support for tc BPF programs. We initially presented the motivation, related work and design at this year's LPC conference in the networking & BPF track [0], and have incorporated feedback we received. The main changes are in first two patches and the last one has an extensive batch of test cases we developed along with it, please see individual patches for details. We tested this series with the tc-testing selftest suite as well as the existing and newly developed tc BPF tests from BPF selftests which all pass. Thanks! [0] https://lpc.events/event/16/contributions/1353/ Daniel Borkmann (10): bpf: Add initial fd-based API to attach tc BPF programs bpf: Implement BPF link handling for tc BPF programs bpf: Implement link update for tc BPF link programs bpf: Implement link introspection for tc BPF link programs bpf: Implement link detach for tc BPF link programs libbpf: Change signature of bpf_prog_query libbpf: Add extended attach/detach opts libbpf: Add support for BPF tc link bpftool: Add support for tc fd-based attach types bpf, selftests: Add various BPF tc link selftests MAINTAINERS | 4 +- include/linux/bpf.h | 4 + include/linux/netdevice.h | 14 +- include/linux/skbuff.h | 4 +- include/net/sch_generic.h | 2 +- include/net/xtc.h | 195 +++++ include/uapi/linux/bpf.h | 45 +- kernel/bpf/Kconfig | 1 + kernel/bpf/Makefile | 1 + kernel/bpf/net.c | 451 +++++++++++ kernel/bpf/syscall.c | 27 +- net/Kconfig | 5 + net/core/dev.c | 262 +++--- net/core/filter.c | 4 +- net/sched/Kconfig | 4 +- net/sched/sch_ingress.c | 48 +- tools/bpf/bpftool/net.c | 76 +- tools/include/uapi/linux/bpf.h | 45 +- tools/lib/bpf/bpf.c | 27 +- tools/lib/bpf/bpf.h | 22 +- tools/lib/bpf/libbpf.c | 31 +- tools/lib/bpf/libbpf.h | 2 + tools/lib/bpf/libbpf.map | 2 + .../selftests/bpf/prog_tests/tc_link.c | 756 ++++++++++++++++++ .../selftests/bpf/progs/test_tc_link.c | 43 + 25 files changed, 1932 insertions(+), 143 deletions(-) create mode 100644 include/net/xtc.h create mode 100644 kernel/bpf/net.c create mode 100644 tools/testing/selftests/bpf/prog_tests/tc_link.c create mode 100644 tools/testing/selftests/bpf/progs/test_tc_link.c -- 2.34.1
Powered by blists - more mailing lists