1. 06 Jan, 2024 3 commits
    • Jakub Kicinski's avatar
      Merge tag 'for-netdev' of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next · 8158a50f
      Jakub Kicinski authored
      Daniel Borkmann says:
      
      ====================
      pull-request: bpf-next 2024-01-05
      
      We've added 40 non-merge commits during the last 2 day(s) which contain
      a total of 73 files changed, 1526 insertions(+), 951 deletions(-).
      
      The main changes are:
      
      1) Fix a memory leak when streaming AF_UNIX sockets were inserted
         into multiple sockmap slots/maps, from John Fastabend.
      
      2) Fix gotol in s390 BPF JIT with large offsets, from Ilya Leoshkevich.
      
      3) Fix reattachment branch in bpf_tracing_prog_attach() and reject
         the request if there is no valid attach_btf, from Jiri Olsa.
      
      4) Remove deprecated bpfilter kernel leftovers given the project
         is developed in user space (https://github.com/facebook/bpfilter),
         from Quentin Deslandes.
      
      5) Relax tracing BPF program recursive attach rules given right now
         it is not possible to create tracing program call cycles,
         from Dmitrii Dolgov.
      
      6) Fix excessive memory consumption for the bpf_global_percpu_ma
         for systems with a large number of CPUs, from Yonghong Song.
      
      7) Small x86 BPF JIT cleanup to reuse emit_nops instead of open-coding
         memcpy of x86_nops, from Leon Hwang.
      
      8) Follow-up for libbpf to support __arg_ctx global function argument tag
         semantics to complement the merged kernel side, from Andrii Nakryiko.
      
      9) Introduce "volatile compare" macros for BPF selftests in order
         to make the latter more robust against compiler optimization,
         from Alexei Starovoitov.
      
      10) Small simplification in verifier's size checking of helper accesses
          along with additional selftests, from Andrei Matei.
      
      * tag 'for-netdev' of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next: (40 commits)
        selftests/bpf: Test re-attachment fix for bpf_tracing_prog_attach
        bpf: Fix re-attachment branch in bpf_tracing_prog_attach
        selftests/bpf: Add test for recursive attachment of tracing progs
        bpf: Relax tracing prog recursive attach rules
        bpf, x86: Use emit_nops to replace memcpy x86_nops
        selftests/bpf: Test gotol with large offsets
        selftests/bpf: Double the size of test_loader log
        s390/bpf: Fix gotol with large offsets
        bpfilter: remove bpfilter
        bpf: Remove unnecessary cpu == 0 check in memalloc
        selftests/bpf: add __arg_ctx BTF rewrite test
        selftests/bpf: add arg:ctx cases to test_global_funcs tests
        libbpf: implement __arg_ctx fallback logic
        libbpf: move BTF loading step after relocation step
        libbpf: move exception callbacks assignment logic into relocation step
        libbpf: use stable map placeholder FDs
        libbpf: don't rely on map->fd as an indicator of map being created
        libbpf: use explicit map reuse flag to skip map creation steps
        libbpf: make uniform use of btf__fd() accessor inside libbpf
        selftests/bpf: Add a selftest with > 512-byte percpu allocation size
        ...
      ====================
      
      Link: https://lore.kernel.org/r/20240105170105.21070-1-daniel@iogearbox.netSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      8158a50f
    • Vadim Fedorenko's avatar
      ptp_ocp: adjust MAINTAINERS and mailmap · 795fd934
      Vadim Fedorenko authored
      The fb.com domain is going to be deprecated.
      Use personal one for kernel contributions.
      Signed-off-by: default avatarVadim Fedorenko <vadfed@fb.com>
      Reviewed-by: default avatarSimon Horman <horms@kernel.org>
      Link: https://lore.kernel.org/r/20240104172540.2379128-1-vadfed@meta.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      795fd934
    • Eric Dumazet's avatar
      geneve: use DEV_STATS_INC() · c72a657b
      Eric Dumazet authored
      geneve updates dev->stats fields locklessly.
      
      Adopt DEV_STATS_INC() to avoid races.
      Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
      Reviewed-by: default avatarSimon Horman <horms@kernel.org>
      Link: https://lore.kernel.org/r/20240104163633.2070538-1-edumazet@google.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
      c72a657b
  2. 05 Jan, 2024 36 commits
  3. 04 Jan, 2024 1 commit
    • Linus Torvalds's avatar
      x86/csum: clean up `csum_partial' further · a476aae3
      Linus Torvalds authored
      Commit 688eb819 ("x86/csum: Improve performance of `csum_partial`")
      ended up improving the code generation for the IP csum calculations, and
      in particular special-casing the 40-byte case that is a hot case for
      IPv6 headers.
      
      It then had _another_ special case for the 64-byte unrolled loop, which
      did two chains of 32-byte blocks, which allows modern CPU's to improve
      performance by doing the chains in parallel thanks to renaming the carry
      flag.
      
      This just unifies the special cases and combines them into just one
      single helper the 40-byte csum case, and replaces the 64-byte case by a
      80-byte case that just does that single helper twice.  It avoids having
      all these different versions of inline assembly, and actually improved
      performance further in my tests.
      
      There was never anything magical about the 64-byte unrolled case, even
      though it happens to be a common size (and typically is the cacheline
      size).
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      a476aae3