From: Alexei Starovoitov <ast@kernel.org>
To: <davem@davemloft.net>
Cc: <daniel@iogearbox.net>, <andrii@kernel.org>, <kuba@kernel.org>,
<netdev@vger.kernel.org>, <bpf@vger.kernel.org>,
<kernel-team@fb.com>
Subject: pull-request: bpf-next 2021-09-17
Date: Fri, 17 Sep 2021 10:37:38 -0700 [thread overview]
Message-ID: <20210917173738.3397064-1-ast@kernel.org> (raw)
Hi David, hi Jakub,
The following pull-request contains BPF updates for your *net-next* tree.
We've added 63 non-merge commits during the last 12 day(s) which contain
a total of 65 files changed, 2653 insertions(+), 751 deletions(-).
The main changes are:
1) Streamline internal BPF program sections handling and
bpf_program__set_attach_target() in libbpf, from Andrii.
2) Add support for new btf kind BTF_KIND_TAG, from Yonghong.
3) Introduce bpf_get_branch_snapshot() to capture LBR, from Song.
4) IMUL optimization for x86-64 JIT, from Jie.
5) xsk selftest improvements, from Magnus.
6) Introduce legacy kprobe events support in libbpf, from Rafael.
7) Access hw timestamp through BPF's __sk_buff, from Vadim.
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, Johan Almbladh, John Fastabend, Maciej Fijalkowski,
Martin KaFai Lau, Paul Chaignon, Peter Zijlstra (Intel), Tiezhu Yang,
Yonghong Song
----------------------------------------------------------------
The following changes since commit 27151f177827d478508e756c7657273261aaf8a9:
Merge tag 'perf-tools-for-v5.15-2021-09-04' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux (2021-09-05 11:56:18 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git
for you to fetch changes up to ca21a3e5edfd47c90141724557f9d6f5000e46f3:
selftests/bpf: Fix a few compiler warnings (2021-09-17 09:10:54 -0700)
----------------------------------------------------------------
Alexei Starovoitov (4):
Merge branch 'bpf: introduce bpf_get_branch_snapshot'
Merge branch 'libbpf: Streamline internal BPF program sections handling'
Merge branch 'bpf: add support for new btf kind BTF_KIND_TAG'
Merge branch 'Improve set_attach_target() and deprecate open_opts.attach_prog_fd'
Andrii Nakryiko (15):
Merge branch 'Bpf skeleton helper method'
libbpf: Fix build with latest gcc/binutils with LTO
libbpf: Make libbpf_version.h non-auto-generated
selftests/bpf: Update selftests to always provide "struct_ops" SEC
libbpf: Ensure BPF prog types are set before relocations
libbpf: Simplify BPF program auto-attach code
libbpf: Minimize explicit iterator of section definition array
selftests/bpf: Fix .gitignore to not ignore test_progs.c
libbpf: Use pre-setup sec_def in libbpf_find_attach_btf_id()
selftests/bpf: Stop using relaxed_core_relocs which has no effect
libbpf: Deprecated bpf_object_open_opts.relaxed_core_relocs
libbpf: Allow skipping attach_func_name in bpf_program__set_attach_target()
selftests/bpf: Switch fexit_bpf2bpf selftest to set_attach_target() API
libbpf: Schedule open_opts.attach_prog_fd deprecation since v0.7
libbpf: Constify all high-level program attach APIs
Daniel Borkmann (2):
Merge branch 'bpf-xsk-selftests'
bpf, selftests: Replicate tailcall limit test for indirect call case
Grant Seltzer (1):
libbpf: Add sphinx code documentation comments
Jie Meng (1):
bpf,x64 Emit IMUL instead of MUL for x86-64
Magnus Karlsson (20):
selftests: xsk: Simplify xsk and umem arrays
selftests: xsk: Introduce type for thread function
selftests: xsk: Introduce test specifications
selftests: xsk: Move num_frames and frame_headroom to xsk_umem_info
selftests: xsk: Move rxqsize into xsk_socket_info
selftests: xsk: Make frame_size configurable
selftests: xsx: Introduce test name in test spec
selftests: xsk: Add use_poll to ifobject
selftests: xsk: Introduce rx_on and tx_on in ifobject
selftests: xsk: Replace second_step global variable
selftests: xsk: Specify number of sockets to create
selftests: xsk: Make xdp_flags and bind_flags local
selftests: xsx: Make pthreads local scope
selftests: xsk: Eliminate MAX_SOCKS define
selftests: xsk: Allow for invalid packets
selftests: xsk: Introduce replacing the default packet stream
selftests: xsk: Add test for unaligned mode
selftests: xsk: Eliminate test specific if-statement in test runner
selftests: xsk: Add tests for invalid xsk descriptors
selftests: xsk: Add tests for 2K frame size
Matt Smith (3):
libbpf: Change bpf_object_skeleton data field to const pointer
bpftool: Provide a helper method for accessing skeleton's embedded ELF data
selftests/bpf: Add checks for X__elf_bytes() skeleton helper
Matteo Croce (1):
bpf: Update bpf_get_smp_processor_id() documentation
Neil Spring (1):
bpf: Permit ingress_ifindex in bpf_prog_test_run_xattr
Quentin Monnet (1):
libbpf: Add LIBBPF_DEPRECATED_SINCE macro for scheduling API deprecations
Rafael David Tinoco (1):
libbpf: Introduce legacy kprobe events support
Song Liu (3):
perf: Enable branch record for software events
bpf: Introduce helper bpf_get_branch_snapshot
selftests/bpf: Add test for bpf_get_branch_snapshot
Toke Høiland-Jørgensen (1):
libbpf: Don't crash on object files with no symbol tables
Vadim Fedorenko (2):
bpf: Add hardware timestamp field to __sk_buff
selftests/bpf: Test new __sk_buff field hwtstamp
Yonghong Song (13):
btf: Change BTF_KIND_* macros to enums
bpf: Support for new btf kind BTF_KIND_TAG
libbpf: Rename btf_{hash,equal}_int to btf_{hash,equal}_int_tag
libbpf: Add support for BTF_KIND_TAG
bpftool: Add support for BTF_KIND_TAG
selftests/bpf: Test libbpf API function btf__add_tag()
selftests/bpf: Change NAME_NTH/IS_NAME_NTH for BTF_KIND_TAG format
selftests/bpf: Add BTF_KIND_TAG unit tests
selftests/bpf: Test BTF_KIND_TAG for deduplication
selftests/bpf: Add a test with a bpf program with btf_tag attributes
docs/bpf: Add documentation for BTF_KIND_TAG
selftests/bpf: Skip btf_tag test if btf_tag attribute not supported
selftests/bpf: Fix a few compiler warnings
Documentation/bpf/btf.rst | 29 +-
arch/x86/events/intel/core.c | 67 +-
arch/x86/events/intel/ds.c | 2 +-
arch/x86/events/intel/lbr.c | 20 +-
arch/x86/events/perf_event.h | 19 +
arch/x86/net/bpf_jit_comp.c | 53 +-
include/linux/perf_event.h | 23 +
include/uapi/linux/bpf.h | 26 +-
include/uapi/linux/btf.h | 55 +-
kernel/bpf/btf.c | 128 +++
kernel/bpf/trampoline.c | 3 +-
kernel/events/core.c | 2 +
kernel/trace/bpf_trace.c | 30 +
lib/test_bpf.c | 1 +
net/bpf/test_run.c | 16 +-
net/core/filter.c | 21 +
tools/bpf/bpftool/Makefile | 3 +
tools/bpf/bpftool/btf.c | 12 +
tools/bpf/bpftool/gen.c | 31 +-
tools/bpf/resolve_btfids/Makefile | 5 +-
tools/include/uapi/linux/bpf.h | 26 +-
tools/include/uapi/linux/btf.h | 55 +-
tools/lib/bpf/.gitignore | 1 -
tools/lib/bpf/Makefile | 39 +-
tools/lib/bpf/btf.c | 84 +-
tools/lib/bpf/btf.h | 87 ++
tools/lib/bpf/btf_dump.c | 3 +
tools/lib/bpf/libbpf.c | 431 ++++++----
tools/lib/bpf/libbpf.h | 41 +-
tools/lib/bpf/libbpf.map | 5 +
tools/lib/bpf/libbpf_common.h | 24 +
tools/lib/bpf/libbpf_internal.h | 27 +-
tools/lib/bpf/libbpf_version.h | 9 +
tools/lib/bpf/xsk.c | 4 +-
tools/testing/selftests/bpf/.gitignore | 5 +-
tools/testing/selftests/bpf/Makefile | 4 +-
tools/testing/selftests/bpf/README.rst | 14 +
.../selftests/bpf/bpf_testmod/bpf_testmod.c | 19 +-
tools/testing/selftests/bpf/btf_helpers.c | 7 +-
tools/testing/selftests/bpf/prog_tests/bpf_iter.c | 6 +-
tools/testing/selftests/bpf/prog_tests/btf.c | 441 ++++++++++-
tools/testing/selftests/bpf/prog_tests/btf_tag.c | 20 +
tools/testing/selftests/bpf/prog_tests/btf_write.c | 21 +
.../testing/selftests/bpf/prog_tests/core_reloc.c | 17 +-
.../selftests/bpf/prog_tests/fexit_bpf2bpf.c | 43 +-
.../selftests/bpf/prog_tests/get_branch_snapshot.c | 100 +++
.../selftests/bpf/prog_tests/module_attach.c | 39 -
tools/testing/selftests/bpf/prog_tests/skb_ctx.c | 6 +
tools/testing/selftests/bpf/prog_tests/skeleton.c | 6 +
tools/testing/selftests/bpf/prog_tests/tailcalls.c | 25 +-
.../testing/selftests/bpf/prog_tests/tc_redirect.c | 2 +-
tools/testing/selftests/bpf/progs/bpf_cubic.c | 12 +-
.../selftests/bpf/progs/get_branch_snapshot.c | 40 +
tools/testing/selftests/bpf/progs/tag.c | 49 ++
tools/testing/selftests/bpf/progs/tailcall6.c | 34 +
tools/testing/selftests/bpf/progs/test_skb_ctx.c | 6 +
tools/testing/selftests/bpf/test_btf.h | 3 +
tools/testing/selftests/bpf/test_progs.c | 39 +
tools/testing/selftests/bpf/test_progs.h | 2 +
tools/testing/selftests/bpf/trace_helpers.c | 37 +
tools/testing/selftests/bpf/trace_helpers.h | 5 +
tools/testing/selftests/bpf/verifier/ctx_skb.c | 60 ++
tools/testing/selftests/bpf/verifier/jit.c | 22 +-
tools/testing/selftests/bpf/xdpxceiver.c | 872 ++++++++++++++-------
tools/testing/selftests/bpf/xdpxceiver.h | 66 +-
65 files changed, 2653 insertions(+), 751 deletions(-)
create mode 100644 tools/lib/bpf/libbpf_version.h
create mode 100644 tools/testing/selftests/bpf/prog_tests/btf_tag.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/get_branch_snapshot.c
create mode 100644 tools/testing/selftests/bpf/progs/get_branch_snapshot.c
create mode 100644 tools/testing/selftests/bpf/progs/tag.c
create mode 100644 tools/testing/selftests/bpf/progs/tailcall6.c
next reply other threads:[~2021-09-17 17:44 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-17 17:37 Alexei Starovoitov [this message]
2021-09-17 20:07 ` pull-request: bpf-next 2021-09-17 Jakub Kicinski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210917173738.3397064-1-ast@kernel.org \
--to=ast@kernel.org \
--cc=andrii@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=kernel-team@fb.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.