Netdev List
 help / color / mirror / Atom feed
From: Daniel Borkmann <daniel@iogearbox.net>
To: davem@davemloft.net
Cc: daniel@iogearbox.net, ast@kernel.org, netdev@vger.kernel.org
Subject: pull-request: bpf-next 2017-12-28
Date: Thu, 28 Dec 2017 01:18:21 +0100	[thread overview]
Message-ID: <20171228001821.5305-1-daniel@iogearbox.net> (raw)

Hi David,

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

The main changes are:

1) Fix incorrect state pruning related to recognition of zero initialized
   stack slots, where stacksafe exploration would mistakenly return a
   positive pruning verdict too early ignoring other slots, from Gianluca.

2) Various BPF to BPF calls related follow-up fixes. Fix an off-by-one
   in maximum call depth check, and rework maximum stack depth tracking
   logic to fix a bypass of the total stack size check reported by Jann.
   Also fix a bug in arm64 JIT where prog->jited_len was uninitialized.
   Addition of various test cases to BPF selftests, from Alexei.

3) Addition of a BPF selftest to test_verifier that is related to BPF to
   BPF calls which demonstrates a late caller stack size increase and
   thus out of bounds access. Fixed above in 2). Test case from Jann.

4) Addition of correlating BPF helper calls, BPF to BPF calls as well
   as BPF maps to bpftool xlated dump in order to allow for better
   BPF program introspection and debugging, from Daniel.

5) Fixing several bugs in BPF to BPF calls kallsyms handling in order
   to get it actually to work for subprogs, from Daniel.

6) Extending sparc64 JIT support for BPF to BPF calls and fix a couple
   of build errors for libbpf on sparc64, from David.

7) Allow narrower context access for BPF dev cgroup typed programs in
   order to adapt to LLVM code generation. Also adjust memlock rlimit
   in the test_dev_cgroup BPF selftest, from Yonghong.

8) Add netdevsim Kconfig entry to BPF selftests since test_offload.py
   relies on netdevsim device being available, from Jakub.

9) Reduce scope of xdp_do_generic_redirect_map() to being static,
   from Xiongwei.

10) Minor cleanups and spelling fixes in BPF verifier, from Colin.

Please consider pulling these changes from:

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

Thanks a lot & have a happy new year!

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

The following changes since commit 962b582785b60a2b420b0636ad762959c72406f6:

  cxgb4: Simplify PCIe Completion Timeout setting (2017-12-18 15:12:57 -0500)

are available in the git repository at:

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

for you to fetch changes up to 624588d9d6cc0a1a270a65fb4d5220f1ceddcf38:

  Merge branch 'bpf-stack-depth-tracking-fixes' (2017-12-27 18:36:24 +0100)

----------------------------------------------------------------
Alexei Starovoitov (5):
      bpf: arm64: fix uninitialized variable
      Merge branch 'bpftool-improvements-kallsymfix'
      bpf: fix maximum stack depth tracking logic
      selftests/bpf: additional stack depth tests
      bpf: fix max call depth check

Colin Ian King (2):
      bpf: fix spelling mistake: "funcation"-> "function"
      bpf: make function skip_callee static and return NULL rather than 0

Daniel Borkmann (3):
      bpf: fix kallsyms handling for subprogs
      bpf: allow for correlation of maps and helpers in dump
      Merge branch 'bpf-stack-depth-tracking-fixes'

David Miller (2):
      libbpf: Fix build errors.
      bpf: sparc64: Add JIT support for multi-function programs.

Gianluca Borello (1):
      bpf: fix stacksafe exploration when comparing states

Jakub Kicinski (1):
      selftests/bpf: add netdevsim to config

Jann Horn (1):
      bpf: selftest for late caller stack size increase

Xiongwei Song (1):
      bpf: make function xdp_do_generic_redirect_map() static

Yonghong Song (2):
      bpf/cgroup: fix a verification error for a CGROUP_DEVICE type prog
      tools/bpf: adjust rlimit RLIMIT_MEMLOCK for test_dev_cgroup

 arch/arm64/net/bpf_jit_comp.c                 |   1 +
 arch/sparc/net/bpf_jit_comp_64.c              |  44 ++++-
 include/linux/bpf_verifier.h                  |   1 +
 include/linux/filter.h                        |   9 +
 include/uapi/linux/bpf.h                      |   3 +-
 kernel/bpf/cgroup.c                           |  15 +-
 kernel/bpf/core.c                             |   4 +-
 kernel/bpf/disasm.c                           |  65 +++++--
 kernel/bpf/disasm.h                           |  29 +++-
 kernel/bpf/syscall.c                          |  93 +++++++++-
 kernel/bpf/verifier.c                         | 126 +++++++++++---
 net/core/filter.c                             |   5 +-
 tools/bpf/bpftool/prog.c                      | 181 ++++++++++++++++++-
 tools/lib/bpf/libbpf.c                        |   5 +-
 tools/testing/selftests/bpf/config            |   1 +
 tools/testing/selftests/bpf/test_dev_cgroup.c |   9 +-
 tools/testing/selftests/bpf/test_verifier.c   | 241 ++++++++++++++++++++++++++
 17 files changed, 764 insertions(+), 68 deletions(-)

             reply	other threads:[~2017-12-28  0:18 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-28  0:18 Daniel Borkmann [this message]
2017-12-28  1:41 ` pull-request: bpf-next 2017-12-28 David Miller
2017-12-28 20:19   ` Daniel Borkmann

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=20171228001821.5305-1-daniel@iogearbox.net \
    --to=daniel@iogearbox.net \
    --cc=ast@kernel.org \
    --cc=davem@davemloft.net \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox