netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH bpf-next 00/10] BPF link support for tc BPF programs
@ 2022-10-04 23:11 Daniel Borkmann
  2022-10-04 23:11 ` [PATCH bpf-next 01/10] bpf: Add initial fd-based API to attach " Daniel Borkmann
                   ` (9 more replies)
  0 siblings, 10 replies; 62+ messages in thread
From: Daniel Borkmann @ 2022-10-04 23:11 UTC (permalink / raw)
  To: bpf
  Cc: razor, ast, andrii, martin.lau, john.fastabend, joannelkoong,
	memxor, toke, joe, netdev, Daniel Borkmann

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


^ permalink raw reply	[flat|nested] 62+ messages in thread

end of thread, other threads:[~2022-10-27  9:02 UTC | newest]

Thread overview: 62+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-04 23:11 [PATCH bpf-next 00/10] BPF link support for tc BPF programs Daniel Borkmann
2022-10-04 23:11 ` [PATCH bpf-next 01/10] bpf: Add initial fd-based API to attach " Daniel Borkmann
2022-10-05  0:55   ` sdf
2022-10-05 10:50     ` Toke Høiland-Jørgensen
2022-10-05 14:48       ` Daniel Borkmann
2022-10-05 12:35     ` Daniel Borkmann
2022-10-05 17:56       ` sdf
2022-10-05 18:21         ` Daniel Borkmann
2022-10-05 10:33   ` Toke Høiland-Jørgensen
2022-10-05 12:47     ` Daniel Borkmann
2022-10-05 14:32       ` Toke Høiland-Jørgensen
2022-10-05 14:53         ` Daniel Borkmann
2022-10-05 19:04   ` Jamal Hadi Salim
2022-10-06 20:49     ` Daniel Borkmann
2022-10-07 15:36       ` Jamal Hadi Salim
2022-10-06  0:22   ` Andrii Nakryiko
2022-10-06  5:00   ` Alexei Starovoitov
2022-10-06 14:40     ` Jamal Hadi Salim
2022-10-06 23:29       ` Alexei Starovoitov
2022-10-07 15:43         ` Jamal Hadi Salim
2022-10-06 21:29     ` Daniel Borkmann
2022-10-06 23:28       ` Alexei Starovoitov
2022-10-07 13:26         ` Daniel Borkmann
2022-10-07 14:32           ` Toke Høiland-Jørgensen
2022-10-07 16:55             ` sdf
2022-10-07 17:20               ` Toke Høiland-Jørgensen
2022-10-07 18:11                 ` sdf
2022-10-07 19:06                   ` Daniel Borkmann
2022-10-07 18:59                 ` Alexei Starovoitov
2022-10-07 19:37                   ` Daniel Borkmann
2022-10-07 22:45                     ` sdf
2022-10-07 23:41                       ` Alexei Starovoitov
2022-10-07 23:34                     ` Alexei Starovoitov
2022-10-08 11:38                       ` Toke Høiland-Jørgensen
2022-10-08 20:38                         ` Alexei Starovoitov
2022-10-13 18:30                           ` Andrii Nakryiko
2022-10-14 15:38                             ` Alexei Starovoitov
2022-10-27  9:01                               ` Daniel Xu
2022-10-06 20:15   ` Martin KaFai Lau
2022-10-06 20:54   ` Martin KaFai Lau
2022-10-04 23:11 ` [PATCH bpf-next 02/10] bpf: Implement BPF link handling for " Daniel Borkmann
2022-10-06  3:19   ` Andrii Nakryiko
2022-10-06 20:54     ` Daniel Borkmann
2022-10-06 17:56   ` Martin KaFai Lau
2022-10-06 20:10   ` Martin KaFai Lau
2022-10-04 23:11 ` [PATCH bpf-next 03/10] bpf: Implement link update for tc BPF link programs Daniel Borkmann
2022-10-06  3:19   ` Andrii Nakryiko
2022-10-04 23:11 ` [PATCH bpf-next 04/10] bpf: Implement link introspection " Daniel Borkmann
2022-10-06  3:19   ` Andrii Nakryiko
2022-10-06 23:14   ` Martin KaFai Lau
2022-10-04 23:11 ` [PATCH bpf-next 05/10] bpf: Implement link detach " Daniel Borkmann
2022-10-06  3:19   ` Andrii Nakryiko
2022-10-06 23:24   ` Martin KaFai Lau
2022-10-04 23:11 ` [PATCH bpf-next 06/10] libbpf: Change signature of bpf_prog_query Daniel Borkmann
2022-10-06  3:19   ` Andrii Nakryiko
2022-10-04 23:11 ` [PATCH bpf-next 07/10] libbpf: Add extended attach/detach opts Daniel Borkmann
2022-10-06  3:19   ` Andrii Nakryiko
2022-10-04 23:11 ` [PATCH bpf-next 08/10] libbpf: Add support for BPF tc link Daniel Borkmann
2022-10-06  3:19   ` Andrii Nakryiko
2022-10-04 23:11 ` [PATCH bpf-next 09/10] bpftool: Add support for tc fd-based attach types Daniel Borkmann
2022-10-04 23:11 ` [PATCH bpf-next 10/10] bpf, selftests: Add various BPF tc link selftests Daniel Borkmann
2022-10-06  3:19   ` Andrii Nakryiko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).