[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191125053412.1172278-1-ast@kernel.org>
Date: Sun, 24 Nov 2019 21:34:12 -0800
From: Alexei Starovoitov <ast@...nel.org>
To: <davem@...emloft.net>
CC: <daniel@...earbox.net>, <netdev@...r.kernel.org>,
<bpf@...r.kernel.org>, <kernel-team@...com>
Subject: pull-request: bpf-next 2019-11-24
Hi David,
The following pull-request contains BPF updates for your *net-next* tree.
We've added 27 non-merge commits during the last 4 day(s) which contain
a total of 50 files changed, 2031 insertions(+), 548 deletions(-).
The main changes are:
1) Optimize bpf_tail_call() from retpoline-ed indirect jump to direct jump,
from Daniel.
2) Support global variables in libbpf, from Andrii.
3) Cleanup selftests with BPF_TRACE_x() macro, from Martin.
4) Fix devmap hash, from Toke.
5) Fix register bounds after 32-bit conditional jumps, from Yonghong.
Please consider pulling these changes from:
git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git
There are 3 patch sets pending that we still consider for this merge window,
so there could be one more PR shortly.
Thanks a lot!
Also thanks to reporters, reviewers and testers of commits in this pull-request:
Alexei Starovoitov, Andrii Nakryiko, Björn Töpel, Jakub Kicinski, Jakub
Sitnicki, John Fastabend, Naresh Kamboju, Tetsuo Handa
----------------------------------------------------------------
The following changes since commit c392bccf2c1075b5d2cc9022d0116a516acb721d:
powerpc: Add const qual to local_read() parameter (2019-11-24 15:06:33 -0800)
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 b553a6ec570044fc1ae300c6fb24f9ce204c5894:
bpf: Simplify __bpf_arch_text_poke poke type handling (2019-11-24 17:12:11 -0800)
----------------------------------------------------------------
Alexei Starovoitov (4):
Merge branch 'libbpf-global-vars'
Merge branch 'jmp32-reg-bounds'
selftests/bpf: Add BPF trampoline performance test
Merge branch 'optimize-bpf_tail_call'
Andrii Nakryiko (7):
selftests/bpf: Ensure no DWARF relocations for BPF object files
libbpf: Refactor relocation handling
libbpf: Fix various errors and warning reported by checkpatch.pl
libbpf: Support initialized global variables
selftests/bpf: Integrate verbose verifier log into test_progs
libbpf: Fix bpf_object name determination for bpf_object__open_file()
selftests/bpf: Ensure core_reloc_kernel is reading test_progs's data only
Daniel Borkmann (10):
bpf, x86: Generalize and extend bpf_arch_text_poke for direct jumps
bpf: Move bpf_free_used_maps into sleepable section
bpf: Move owner type, jited info into array auxiliary data
bpf: Add initial poke descriptor table for jit images
bpf: Add poke dependency tracking for prog array maps
bpf: Constant map key tracking for prog array pokes
bpf, x86: Emit patchable direct jump as tail call
bpf, testing: Add various tail call test cases
bpf: Add bpf_jit_blinding_enabled for !CONFIG_BPF_JIT
bpf: Simplify __bpf_arch_text_poke poke type handling
Jakub Kicinski (1):
selftests, bpftool: Skip the build test if not in tree
Luc Van Oostenryck (1):
xsk: Fix xsk_poll()'s return type
Martin KaFai Lau (1):
bpf: Introduce BPF_TRACE_x helper for the tracing tests
Quentin Monnet (3):
tools, bpftool: Fix warning on ignored return value for 'read'
tools, bpf: Fix build for 'make -s tools/bpf O=<dir>'
selftests, bpftool: Set EXIT trap after usage function
Toke Høiland-Jørgensen (1):
xdp: Fix cleanup on map free for devmap_hash map type
Yonghong Song (2):
bpf: Provide better register bounds after jmp32 instructions
selftests/bpf: Add verifier tests for better jmp32 register bounds
arch/x86/net/bpf_jit_comp.c | 229 +++++++---
include/linux/bpf.h | 60 ++-
include/linux/bpf_verifier.h | 3 +-
include/linux/filter.h | 15 +
kernel/bpf/arraymap.c | 205 ++++++++-
kernel/bpf/core.c | 73 ++-
kernel/bpf/devmap.c | 74 ++--
kernel/bpf/map_in_map.c | 5 +-
kernel/bpf/syscall.c | 56 +--
kernel/bpf/trampoline.c | 8 +-
kernel/bpf/verifier.c | 139 +++++-
net/xdp/xsk.c | 8 +-
tools/bpf/Makefile | 6 +
tools/bpf/bpftool/btf.c | 6 +-
tools/lib/bpf/bpf_helpers.h | 13 -
tools/lib/bpf/libbpf.c | 294 +++++++------
tools/testing/selftests/bpf/Makefile | 2 +-
tools/testing/selftests/bpf/bpf_trace_helpers.h | 58 +++
.../selftests/bpf/prog_tests/bpf_verif_scale.c | 4 +-
.../testing/selftests/bpf/prog_tests/core_reloc.c | 16 +-
tools/testing/selftests/bpf/prog_tests/tailcalls.c | 487 +++++++++++++++++++++
.../selftests/bpf/prog_tests/test_overhead.c | 142 ++++++
tools/testing/selftests/bpf/progs/fentry_test.c | 72 +--
tools/testing/selftests/bpf/progs/fexit_bpf2bpf.c | 27 +-
tools/testing/selftests/bpf/progs/fexit_test.c | 83 +---
tools/testing/selftests/bpf/progs/kfree_skb.c | 43 +-
tools/testing/selftests/bpf/progs/tailcall1.c | 48 ++
tools/testing/selftests/bpf/progs/tailcall2.c | 59 +++
tools/testing/selftests/bpf/progs/tailcall3.c | 31 ++
tools/testing/selftests/bpf/progs/tailcall4.c | 33 ++
tools/testing/selftests/bpf/progs/tailcall5.c | 40 ++
.../selftests/bpf/progs/test_core_reloc_arrays.c | 4 +-
.../bpf/progs/test_core_reloc_bitfields_direct.c | 4 +-
.../bpf/progs/test_core_reloc_bitfields_probed.c | 4 +-
.../bpf/progs/test_core_reloc_existence.c | 4 +-
.../selftests/bpf/progs/test_core_reloc_flavors.c | 4 +-
.../selftests/bpf/progs/test_core_reloc_ints.c | 4 +-
.../selftests/bpf/progs/test_core_reloc_kernel.c | 8 +-
.../selftests/bpf/progs/test_core_reloc_misc.c | 4 +-
.../selftests/bpf/progs/test_core_reloc_mods.c | 4 +-
.../selftests/bpf/progs/test_core_reloc_nesting.c | 4 +-
.../bpf/progs/test_core_reloc_primitives.c | 4 +-
.../bpf/progs/test_core_reloc_ptr_as_arr.c | 4 +-
.../selftests/bpf/progs/test_core_reloc_size.c | 4 +-
tools/testing/selftests/bpf/progs/test_overhead.c | 39 ++
tools/testing/selftests/bpf/test_bpftool_build.sh | 30 +-
tools/testing/selftests/bpf/test_progs.c | 18 +-
tools/testing/selftests/bpf/test_progs.h | 10 +-
tools/testing/selftests/bpf/test_stub.c | 4 +
tools/testing/selftests/bpf/verifier/jmp32.c | 83 ++++
50 files changed, 2031 insertions(+), 548 deletions(-)
create mode 100644 tools/testing/selftests/bpf/bpf_trace_helpers.h
create mode 100644 tools/testing/selftests/bpf/prog_tests/tailcalls.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/test_overhead.c
create mode 100644 tools/testing/selftests/bpf/progs/tailcall1.c
create mode 100644 tools/testing/selftests/bpf/progs/tailcall2.c
create mode 100644 tools/testing/selftests/bpf/progs/tailcall3.c
create mode 100644 tools/testing/selftests/bpf/progs/tailcall4.c
create mode 100644 tools/testing/selftests/bpf/progs/tailcall5.c
create mode 100644 tools/testing/selftests/bpf/progs/test_overhead.c
Powered by blists - more mailing lists