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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220217232027.29831-1-daniel@iogearbox.net>
Date:   Fri, 18 Feb 2022 00:20:27 +0100
From:   Daniel Borkmann <daniel@...earbox.net>
To:     davem@...emloft.net
Cc:     kuba@...nel.org, daniel@...earbox.net, ast@...nel.org,
        andrii@...nel.org, netdev@...r.kernel.org, bpf@...r.kernel.org
Subject: pull-request: bpf-next 2022-02-17

Hi David, hi Jakub,

The following pull-request contains BPF updates for your *net-next* tree.

We've added 29 non-merge commits during the last 8 day(s) which contain
a total of 34 files changed, 1502 insertions(+), 524 deletions(-).

The main changes are:

1) Add BTFGen support to bpftool which allows to use CO-RE in kernels without
   BTF info, from Mauricio Vásquez, Rafael David Tinoco, Lorenzo Fontana and
   Leonardo Di Donato. (Details: https://lpc.events/event/11/contributions/948/)

2) Prepare light skeleton to be used in both kernel module and user space
   and convert bpf_preload.ko to use light skeleton, from Alexei Starovoitov.

3) Rework bpftool's versioning scheme and align with libbpf's version number;
   also add linked libbpf version info to "bpftool version", from Quentin Monnet.

4) Add minimal C++ specific additions to bpftool's skeleton codegen to
   facilitate use of C skeletons in C++ applications, from Andrii Nakryiko.

5) Add BPF verifier sanity check whether relative offset on kfunc calls overflows
   desc->imm and reject the BPF program if the case, from Hou Tao.

6) Fix libbpf to use a dynamically allocated buffer for netlink messages to
   avoid receiving truncated messages on some archs, from Toke Høiland-Jørgensen.

7) Various follow-up fixes to the JIT bpf_prog_pack allocator, from Song Liu.

8) Various BPF selftest and vmtest.sh fixes, from Yucong Sun.

9) Fix bpftool pretty print handling on dumping map keys/values when no BTF
   is available, from Jiri Olsa and Yinjun Zhang.

10) Extend XDP frags selftest to check for invalid length, from Lorenzo Bianconi.

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:

Alexei Starovoitov, Andrii Nakryiko, Jiri Olsa, Kumar Kartikeya Dwivedi, 
Niklas Söderlund, Stephen Rothwell, Toke Høiland-Jørgensen, Yonghong 
Song, Zhiqian Guan

----------------------------------------------------------------

The following changes since commit 4f5e483b8c7a644733db941a1ae00173baa7b463:

  net: dsa: qca8k: fix noderef.cocci warnings (2022-02-10 10:56:00 -0800)

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 d24d2a2b0a81dd5e9bb99aeb4559ec9734e1416f:

  bpf: bpf_prog_pack: Set proper size before freeing ro_header (2022-02-17 13:15:36 -0800)

----------------------------------------------------------------
Alexei Starovoitov (6):
      bpf: Extend sys_bpf commands for bpf_syscall programs.
      libbpf: Prepare light skeleton for the kernel.
      bpftool: Generalize light skeleton generation.
      bpf: Update iterators.lskel.h.
      bpf: Convert bpf_preload.ko to use light skeleton.
      Merge branch 'Make BPF skeleton easier to use from C++ code'

Andrii Nakryiko (8):
      Merge branch 'bpftool: Switch to new versioning scheme (align on libbpf's)'
      libbpf: Fix libbpf.map inheritance chain for LIBBPF_0.7.0
      selftests/bpf: Fix GCC11 compiler warnings in -O2 mode
      bpftool: Add C++-specific open/load/etc skeleton wrappers
      selftests/bpf: Add Skeleton templated wrapper as an example
      Merge branch 'libbpf: Implement BTFGen'
      bpftool: Fix C++ additions to skeleton
      libbpf: Fix memleak in libbpf_netlink_recv()

Daniel Borkmann (1):
      Merge branch 'bpf-light-skel'

Hou Tao (1):
      bpf: Reject kfunc calls that overflow insn->imm

Jiri Olsa (1):
      bpftool: Fix pretty print dump for maps without BTF loaded

Lorenzo Bianconi (1):
      selftest/bpf: Check invalid length in test_xdp_update_frags

Mauricio Vásquez (6):
      libbpf: Split bpf_core_apply_relo()
      libbpf: Expose bpf_core_{add,free}_cands() to bpftool
      bpftool: Add gen min_core_btf command
      bpftool: Implement "gen min_core_btf" logic
      bpftool: Implement btfgen_get_btf()
      selftests/bpf: Test "bpftool gen min_core_btf"

Quentin Monnet (2):
      bpftool: Add libbpf's version number to "bpftool version" output
      bpftool: Update versioning scheme, align on libbpf's version number

Rafael David Tinoco (1):
      bpftool: Gen min_core_btf explanation and examples

Song Liu (2):
      bpf: Fix bpf_prog_pack build for ppc64_defconfig
      bpf: bpf_prog_pack: Set proper size before freeing ro_header

Toke Høiland-Jørgensen (1):
      libbpf: Use dynamically allocated buffer when receiving netlink messages

Yinjun Zhang (1):
      bpftool: Fix the error when lookup in no-btf maps

Yucong Sun (2):
      selftests/bpf: Fix vmtest.sh to launch smp vm.
      selftests/bpf: Fix crash in core_reloc when bpftool btfgen fails

 kernel/bpf/btf.c                                   |  13 +-
 kernel/bpf/core.c                                  |   5 +-
 kernel/bpf/inode.c                                 |  39 +-
 kernel/bpf/preload/Kconfig                         |   7 +-
 kernel/bpf/preload/Makefile                        |  14 +-
 kernel/bpf/preload/bpf_preload.h                   |   8 +-
 kernel/bpf/preload/bpf_preload_kern.c              | 119 ++--
 kernel/bpf/preload/bpf_preload_umd_blob.S          |   7 -
 kernel/bpf/preload/iterators/bpf_preload_common.h  |  13 -
 kernel/bpf/preload/iterators/iterators.c           | 108 ----
 kernel/bpf/preload/iterators/iterators.lskel.h     | 141 +++--
 kernel/bpf/syscall.c                               |  40 +-
 kernel/bpf/verifier.c                              |  11 +-
 tools/bpf/bpftool/Documentation/bpftool-gen.rst    |  90 +++
 tools/bpf/bpftool/Documentation/common_options.rst |  13 +-
 tools/bpf/bpftool/Makefile                         |  14 +-
 tools/bpf/bpftool/bash-completion/bpftool          |   6 +-
 tools/bpf/bpftool/gen.c                            | 654 ++++++++++++++++++++-
 tools/bpf/bpftool/main.c                           |  25 +
 tools/bpf/bpftool/map.c                            |  33 +-
 tools/lib/bpf/gen_loader.c                         |  15 +-
 tools/lib/bpf/libbpf.c                             |  88 +--
 tools/lib/bpf/libbpf.map                           |   2 +-
 tools/lib/bpf/libbpf_internal.h                    |   9 +
 tools/lib/bpf/netlink.c                            |  63 +-
 tools/lib/bpf/relo_core.c                          |  79 +--
 tools/lib/bpf/relo_core.h                          |  42 +-
 tools/lib/bpf/skel_internal.h                      | 185 +++++-
 tools/testing/selftests/bpf/prog_tests/btf.c       |   2 +-
 .../testing/selftests/bpf/prog_tests/core_reloc.c  |  52 +-
 .../testing/selftests/bpf/prog_tests/tc_redirect.c |   2 +-
 .../selftests/bpf/prog_tests/xdp_adjust_frags.c    |  38 +-
 tools/testing/selftests/bpf/test_cpp.cpp           |  87 ++-
 tools/testing/selftests/bpf/vmtest.sh              |   2 +-
 34 files changed, 1502 insertions(+), 524 deletions(-)
 delete mode 100644 kernel/bpf/preload/bpf_preload_umd_blob.S
 delete mode 100644 kernel/bpf/preload/iterators/bpf_preload_common.h
 delete mode 100644 kernel/bpf/preload/iterators/iterators.c

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ