1. 05 Mar, 2022 1 commit
    • Jakub Kicinski's avatar
      Merge https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next · 6646dc24
      Jakub Kicinski authored
      Daniel Borkmann says:
      
      ====================
      pull-request: bpf-next 2022-03-04
      
      We've added 32 non-merge commits during the last 14 day(s) which contain
      a total of 59 files changed, 1038 insertions(+), 473 deletions(-).
      
      The main changes are:
      
      1) Optimize BPF stackmap's build_id retrieval by caching last valid build_id,
         as consecutive stack frames are likely to be in the same VMA and therefore
         have the same build id, from Hao Luo.
      
      2) Several improvements to arm64 BPF JIT, that is, support for JITing
         the atomic[64]_fetch_add, atomic[64]_[fetch_]{and,or,xor} and lastly
         atomic[64]_{xchg|cmpxchg}. Also fix the BTF line info dump for JITed
         programs, from Hou Tao.
      
      3) Optimize generic BPF map batch deletion by only enforcing synchronize_rcu()
         barrier once upon return to user space, from Eric Dumazet.
      
      4) For kernel build parse DWARF and generate BTF through pahole with enabled
         multithreading, from Kui-Feng Lee.
      
      5) BPF verifier usability improvements by making log info more concise and
         replacing inv with scalar type name, from Mykola Lysenko.
      
      6) Two follow-up fixes for BPF prog JIT pack allocator, from Song Liu.
      
      7) Add a new Kconfig to allow for loading kernel modules with non-matching
         BTF type info; their BTF info is then removed on load, from Connor O'Brien.
      
      8) Remove reallocarray() usage from bpftool and switch to libbpf_reallocarray()
         in order to fix compilation errors for older glibc, from Mauricio Vásquez.
      
      9) Fix libbpf to error on conflicting name in BTF when type declaration
         appears before the definition, from Xu Kuohai.
      
      10) Fix issue in BPF preload for in-kernel light skeleton where loaded BPF
          program fds prevent init process from setting up fd 0-2, from Yucong Sun.
      
      11) Fix libbpf reuse of pinned perf RB map when max_entries is auto-determined
          by libbpf, from Stijn Tintel.
      
      12) Several cleanups for libbpf and a fix to enforce perf RB map #pages to be
          non-zero, from Yuntao Wang.
      
      * https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next: (32 commits)
        bpf: Small BPF verifier log improvements
        libbpf: Add a check to ensure that page_cnt is non-zero
        bpf, x86: Set header->size properly before freeing it
        x86: Disable HAVE_ARCH_HUGE_VMALLOC on 32-bit x86
        bpf, test_run: Fix overflow in XDP frags bpf_test_finish
        selftests/bpf: Update btf_dump case for conflicting names
        libbpf: Skip forward declaration when counting duplicated type names
        bpf: Add some description about BPF_JIT_ALWAYS_ON in Kconfig
        bpf, docs: Add a missing colon in verifier.rst
        bpf: Cache the last valid build_id
        libbpf: Fix BPF_MAP_TYPE_PERF_EVENT_ARRAY auto-pinning
        bpf, selftests: Use raw_tp program for atomic test
        bpf, arm64: Support more atomic operations
        bpftool: Remove redundant slashes
        bpf: Add config to allow loading modules with BTF mismatches
        bpf, arm64: Feed byte-offset into bpf line info
        bpf, arm64: Call build_prologue() first in first JIT pass
        bpf: Fix issue with bpf preload module taking over stdout/stdin of kernel.
        bpftool: Bpf skeletons assert type sizes
        bpf: Cleanup comments
        ...
      ====================
      
      Link: https://lore.kernel.org/r/20220304164313.31675-1-daniel@iogearbox.netSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      6646dc24
  2. 04 Mar, 2022 39 commits