[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200722032932.62060-1-alexei.starovoitov@gmail.com>
Date: Tue, 21 Jul 2020 20:29:32 -0700
From: Alexei Starovoitov <alexei.starovoitov@...il.com>
To: davem@...emloft.net
Cc: daniel@...earbox.net, netdev@...r.kernel.org, bpf@...r.kernel.org,
kernel-team@...com
Subject: pull-request: bpf-next 2020-07-21
Hi David,
The following pull-request contains BPF updates for your *net-next* tree.
We've added 46 non-merge commits during the last 6 day(s) which contain
a total of 68 files changed, 4929 insertions(+), 526 deletions(-).
The main changes are:
1) Run BPF program on socket lookup, from Jakub.
2) Introduce cpumap, from Lorenzo.
3) s390 JIT fixes, from Ilya.
4) teach riscv JIT to emit compressed insns, from Luke.
5) use build time computed BTF ids in bpf iter, from Yonghong.
Please consider pulling these changes from:
git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git
Thanks a lot!
Also thanks to reporters, reviewers and testers of commits in this pull-request:
Andrii Nakryiko, Ilya Leoshkevich, Jakub Sitnicki, Jesper Dangaard
Brouer, Jiri Olsa, Quentin Monnet, Randy Dunlap, Seth Forshee, Stephen
Rothwell
----------------------------------------------------------------
The following changes since commit 9b74ebb2b0f259474da65fa0178c657e5fa5c640:
cpumap: Use non-locked version __ptr_ring_consume_batched (2020-07-16 17:00:31 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git
for you to fetch changes up to 9165e1d70fb34ce438e78aad90408cfa86e4c2d0:
bpftool: Use only nftw for file tree parsing (2020-07-21 23:42:56 +0200)
----------------------------------------------------------------
Alexei Starovoitov (3):
Merge branch 'bpf-socket-lookup'
Merge branch 'compressed-JITed-insn'
Merge branch 'bpf_iter-BTF_ID-at-build-time'
David Ahern (1):
net: Refactor xdp_convert_buff_to_frame
Ian Rogers (1):
libbpf bpf_helpers: Use __builtin_offsetof for offsetof
Ilya Leoshkevich (7):
selftests: bpf: test_kmod.sh: Fix running out of srctree
s390/bpf: Fix sign extension in branch_ku
s390/bpf: Use brcl for jumping to exit_ip if necessary
s390/bpf: Tolerate not converging code shrinking
s390/bpf: Use bpf_skip() in bpf_jit_prologue()
selftests/bpf: Fix test_lwt_seg6local.sh hangs
samples/bpf, selftests/bpf: Use bpf_probe_read_kernel
Jakub Sitnicki (16):
bpf, netns: Handle multiple link attachments
bpf: Introduce SK_LOOKUP program type with a dedicated attach point
inet: Extract helper for selecting socket from reuseport group
inet: Run SK_LOOKUP BPF program on socket lookup
inet6: Extract helper for selecting socket from reuseport group
inet6: Run SK_LOOKUP BPF program on socket lookup
udp: Extract helper for selecting socket from reuseport group
udp: Run SK_LOOKUP BPF program on socket lookup
udp6: Extract helper for selecting socket from reuseport group
udp6: Run SK_LOOKUP BPF program on socket lookup
bpf: Sync linux/bpf.h to tools/
libbpf: Add support for SK_LOOKUP program type
tools/bpftool: Add name mappings for SK_LOOKUP prog and attach type
selftests/bpf: Add verifier tests for bpf_sk_lookup context access
selftests/bpf: Tests for BPF_SK_LOOKUP attach point
bpf, netns: Fix build without CONFIG_INET
Lorenzo Bianconi (8):
samples/bpf: xdp_redirect_cpu_user: Do not update bpf maps in option loop
cpumap: Formalize map value as a named struct
bpf: cpumap: Add the possibility to attach an eBPF program to cpumap
bpf: cpumap: Implement XDP_REDIRECT for eBPF programs attached to map entries
libbpf: Add SEC name for xdp programs attached to CPUMAP
samples/bpf: xdp_redirect_cpu: Load a eBPF program on cpumap
selftest: Add tests for XDP programs in CPUMAP entries
bpf: cpumap: Fix possible rcpu kthread hung
Luke Nelson (3):
bpf, riscv: Modify JIT ctx to support compressed instructions
bpf, riscv: Add encodings for compressed instructions
bpf, riscv: Use compressed instructions in the rv64 JIT
Randy Dunlap (1):
bpf: Drop duplicated words in uapi helper comments
Seth Forshee (1):
bpf: revert "test_bpf: Flag tests that cannot be jited on s390"
Stanislav Fomichev (1):
selftests/bpf: Fix possible hang in sockopt_inherit
Tony Ambardar (1):
bpftool: Use only nftw for file tree parsing
Yonghong Song (5):
bpf: Compute bpf_skc_to_*() helper socket btf ids at build time
tools/bpf: Sync btf_ids.h to tools
bpf: Add BTF_ID_LIST_GLOBAL in btf_ids.h
bpf: Make btf_sock_ids global
bpf: net: Use precomputed btf_id for bpf iterators
YueHaibing (1):
tools/bpftool: Fix error handing in do_skeleton()
arch/riscv/net/bpf_jit.h | 483 +++++++-
arch/riscv/net/bpf_jit_comp32.c | 14 +-
arch/riscv/net/bpf_jit_comp64.c | 293 ++---
arch/riscv/net/bpf_jit_core.c | 6 +-
arch/s390/net/bpf_jit_comp.c | 63 +-
include/linux/bpf-netns.h | 3 +
include/linux/bpf.h | 15 +-
include/linux/bpf_types.h | 2 +
include/linux/btf_ids.h | 40 +-
include/linux/filter.h | 147 +++
include/net/xdp.h | 41 +-
include/trace/events/xdp.h | 16 +-
include/uapi/linux/bpf.h | 97 +-
kernel/bpf/btf.c | 6 +-
kernel/bpf/core.c | 55 +
kernel/bpf/cpumap.c | 167 ++-
kernel/bpf/map_iter.c | 7 +-
kernel/bpf/net_namespace.c | 131 +-
kernel/bpf/syscall.c | 9 +
kernel/bpf/task_iter.c | 12 +-
kernel/bpf/verifier.c | 13 +-
lib/test_bpf.c | 20 -
net/core/dev.c | 9 +
net/core/filter.c | 228 +++-
net/ipv4/inet_hashtables.c | 60 +-
net/ipv4/tcp_ipv4.c | 4 +-
net/ipv4/udp.c | 97 +-
net/ipv6/inet6_hashtables.c | 66 +-
net/ipv6/route.c | 7 +-
net/ipv6/udp.c | 97 +-
net/netlink/af_netlink.c | 7 +-
samples/bpf/offwaketime_kern.c | 7 +-
samples/bpf/test_overhead_kprobe_kern.c | 12 +-
samples/bpf/tracex1_kern.c | 9 +-
samples/bpf/tracex5_kern.c | 4 +-
samples/bpf/xdp_redirect_cpu_kern.c | 25 +-
samples/bpf/xdp_redirect_cpu_user.c | 209 +++-
scripts/bpf_helpers_doc.py | 9 +-
tools/bpf/bpftool/Documentation/bpftool-prog.rst | 2 +-
tools/bpf/bpftool/bash-completion/bpftool | 2 +-
tools/bpf/bpftool/common.c | 138 ++-
tools/bpf/bpftool/gen.c | 5 +-
tools/bpf/bpftool/main.h | 4 +-
tools/bpf/bpftool/prog.c | 3 +-
tools/bpf/bpftool/skeleton/pid_iter.bpf.c | 3 +-
tools/include/linux/btf_ids.h | 51 +-
tools/include/uapi/linux/bpf.h | 97 +-
tools/lib/bpf/bpf_helpers.h | 2 +-
tools/lib/bpf/libbpf.c | 5 +
tools/lib/bpf/libbpf.h | 2 +
tools/lib/bpf/libbpf.map | 2 +
tools/lib/bpf/libbpf_probes.c | 3 +
tools/testing/selftests/bpf/network_helpers.c | 58 +-
tools/testing/selftests/bpf/network_helpers.h | 2 +
.../selftests/bpf/prog_tests/resolve_btfids.c | 34 +-
tools/testing/selftests/bpf/prog_tests/sk_lookup.c | 1282 ++++++++++++++++++++
.../selftests/bpf/prog_tests/sockopt_inherit.c | 3 +-
.../selftests/bpf/prog_tests/xdp_cpumap_attach.c | 70 ++
.../testing/selftests/bpf/progs/bpf_iter_netlink.c | 6 +-
tools/testing/selftests/bpf/progs/bpf_iter_tcp4.c | 2 +-
tools/testing/selftests/bpf/progs/bpf_iter_tcp6.c | 2 +-
tools/testing/selftests/bpf/progs/bpf_iter_udp4.c | 2 +-
tools/testing/selftests/bpf/progs/bpf_iter_udp6.c | 2 +-
tools/testing/selftests/bpf/progs/test_sk_lookup.c | 641 ++++++++++
.../bpf/progs/test_xdp_with_cpumap_helpers.c | 36 +
tools/testing/selftests/bpf/test_kmod.sh | 12 +-
tools/testing/selftests/bpf/test_lwt_seg6local.sh | 2 +-
.../testing/selftests/bpf/verifier/ctx_sk_lookup.c | 492 ++++++++
68 files changed, 4929 insertions(+), 526 deletions(-)
create mode 100644 tools/testing/selftests/bpf/prog_tests/sk_lookup.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/xdp_cpumap_attach.c
create mode 100644 tools/testing/selftests/bpf/progs/test_sk_lookup.c
create mode 100644 tools/testing/selftests/bpf/progs/test_xdp_with_cpumap_helpers.c
create mode 100644 tools/testing/selftests/bpf/verifier/ctx_sk_lookup.c
Powered by blists - more mailing lists