Subject: pull-request: bpf 2020-04-24

From: Alexei Starovoitov <[email-masked]>
Date: Fri, 24 Apr 2020 17:53:33 -0700

Hi David,

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

We've added 17 non-merge commits during the last 5 day(s) which contain
a total of 19 files changed, 203 insertions(+), 85 deletions(-).

The main changes are:

1) link_update fix, from Andrii.

2) libbpf get_xdp_id fix, from David.

3) xadd verifier fix, from Jann.

4) x86-32 JIT fixes, from Luke and Wang.

5) test_btf fix, from Stanislav.

6) freplace verifier fix, from Toke.

Please consider pulling these changes from:

  git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git

Thanks a lot!

Also thanks to reporters, reviewers and testers of commits in this pull-request:

Andrey Ignatov, Andrii Nakryiko, H. Peter Anvin (Intel), Hulk Robot, 
Jesper Dangaard Brouer, Quentin Monnet, Song Liu, Wang YanQing, Xiumei Mu

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

The following changes since commit a460fc5d4c170806a31e590df37ead3ab951315c:

  Merge tag 'mlx5-fixes-2020-04-20' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux (2020-04-20 16:17:48 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git 

for you to fetch changes up to e1cebd841b0aa1ceda771706d54a0501986a3c88:

  selftests/bpf: Fix a couple of broken test_btf cases (2020-04-24 17:47:40 -0700)

----------------------------------------------------------------
Andrii Nakryiko (2):
      bpf: Fix leak in LINK_UPDATE and enforce empty old_prog_fd
      tools/runqslower: Ensure own vmlinux.h is picked up first

David Ahern (1):
      libbpf: Only check mode flags in get_xdp_id

Jakub Wilk (1):
      bpf: Fix reStructuredText markup

Jann Horn (2):
      bpf: Forbid XADD on spilled pointers for unprivileged users
      bpf: Fix handling of XADD on BTF memory

Luke Nelson (4):
      bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B
      bpf, selftests: Add test for BPF_STX BPF_B storing R10
      bpf, x86_32: Fix incorrect encoding in BPF_LDX zero-extension
      bpf, x86_32: Fix clobbering of dst for BPF_JSET

Martin KaFai Lau (1):
      bpftool: Respect the -d option in struct_ops cmd

Stanislav Fomichev (1):
      selftests/bpf: Fix a couple of broken test_btf cases

Toke Høiland-Jørgensen (3):
      cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled
      bpf: Propagate expected_attach_type when verifying freplace programs
      selftests/bpf: Add test for freplace program with expected_attach_type

Wang YanQing (1):
      bpf, x86_32: Fix logic error in BPF_LDX zero-extension

Zou Wei (1):
      bpf: Make bpf_link_fops static

 arch/x86/net/bpf_jit_comp.c                        | 18 ++++++++--
 arch/x86/net/bpf_jit_comp32.c                      | 28 +++++++++++----
 include/uapi/linux/bpf.h                           |  2 +-
 kernel/bpf/cpumap.c                                |  2 +-
 kernel/bpf/syscall.c                               | 13 +++++--
 kernel/bpf/verifier.c                              | 38 ++++++++++++++------
 tools/bpf/bpftool/struct_ops.c                     |  8 ++++-
 tools/bpf/runqslower/Makefile                      |  2 +-
 tools/include/uapi/linux/bpf.h                     |  2 +-
 tools/lib/bpf/netlink.c                            |  2 ++
 .../selftests/bpf/prog_tests/fexit_bpf2bpf.c       | 30 ++++++++++++----
 tools/testing/selftests/bpf/progs/connect4_prog.c  | 28 ++++++++-------
 .../selftests/bpf/progs/freplace_connect4.c        | 18 ++++++++++
 tools/testing/selftests/bpf/progs/test_btf_haskv.c | 18 +++-------
 tools/testing/selftests/bpf/progs/test_btf_newkv.c | 18 +++-------
 tools/testing/selftests/bpf/progs/test_btf_nokv.c  | 18 +++-------
 tools/testing/selftests/bpf/test_btf.c             |  2 +-
 tools/testing/selftests/bpf/verifier/stack_ptr.c   | 40 ++++++++++++++++++++++
 .../selftests/bpf/verifier/value_illegal_alu.c     |  1 +
 19 files changed, 203 insertions(+), 85 deletions(-)
 create mode 100644 tools/testing/selftests/bpf/progs/freplace_connect4.c