All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ilya Leoshkevich <iii@linux.ibm.com>
To: Alexei Starovoitov <ast@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>
Cc: bpf@vger.kernel.org, Heiko Carstens <hca@linux.ibm.com>,
	Vasily Gorbik <gor@linux.ibm.com>,
	Ilya Leoshkevich <iii@linux.ibm.com>
Subject: [PATCH v2 0/4] s390/bpf: implement BPF_PROBE_MEM
Date: Thu, 16 Jul 2020 01:32:57 +0200	[thread overview]
Message-ID: <20200715233301.933201-1-iii@linux.ibm.com> (raw)

This patch series implements BPF_PROBE_MEM opcode, which is used in BPF
programs that walk chains of kernel pointers. It consists of two parts:
patches 1 and 2 enhance s390 exception table infrastructure, patches 3
and 4 contains the actual implementation and the test.

We would like to take this series via s390 tree, because it contains
dependent s390 extable and bpf jit changes. However, it would be great
if someone knowledgeable could review patches 3 and 4.

v1 -> v2:

- Add `jit->excnt = 0` in order to fix WARNINGs and fallbacks to the
  interpreter when running extra_pass. This wasn't easy to spot on
  bpf-next, since tests passed anyway. However, on v5.8-rc5 this led
  to panics.

Ilya Leoshkevich (4):
  s390/kernel: unify EX_TABLE* implementations
  s390/kernel: expand the exception table logic to allow new handling
    options
  s390/bpf: implement BPF_PROBE_MEM
  selftests/bpf: add exception handling test

 arch/s390/include/asm/asm-const.h             |  12 ++
 arch/s390/include/asm/extable.h               |  50 ++++++-
 arch/s390/include/asm/linkage.h               |  35 ++---
 arch/s390/kernel/kprobes.c                    |   4 +-
 arch/s390/kernel/traps.c                      |   7 +-
 arch/s390/mm/fault.c                          |   4 +-
 arch/s390/net/bpf_jit_comp.c                  | 139 +++++++++++++++++-
 scripts/sorttable.c                           |  25 ++++
 .../selftests/bpf/prog_tests/bpf_iter.c       |  17 +++
 .../selftests/bpf/progs/bpf_iter_exception.c  |  20 +++
 10 files changed, 273 insertions(+), 40 deletions(-)
 create mode 100644 arch/s390/include/asm/asm-const.h
 create mode 100644 tools/testing/selftests/bpf/progs/bpf_iter_exception.c

-- 
2.25.4


             reply	other threads:[~2020-07-15 23:38 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-15 23:32 Ilya Leoshkevich [this message]
2020-07-15 23:32 ` [PATCH v2 1/4] s390/kernel: unify EX_TABLE* implementations Ilya Leoshkevich
2020-07-15 23:32 ` [PATCH v2 2/4] s390/kernel: expand the exception table logic to allow new handling options Ilya Leoshkevich
2020-07-15 23:33 ` [PATCH v2 3/4] s390/bpf: implement BPF_PROBE_MEM Ilya Leoshkevich
2020-07-16 11:09   ` Heiko Carstens
2020-07-15 23:33 ` [PATCH v2 4/4] selftests/bpf: add exception handling test Ilya Leoshkevich
2020-07-21 18:01 ` [PATCH v2 0/4] s390/bpf: implement BPF_PROBE_MEM Alexei Starovoitov
2020-07-21 20:16   ` Heiko Carstens
2020-07-21 20:23     ` Alexei Starovoitov

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=20200715233301.933201-1-iii@linux.ibm.com \
    --to=iii@linux.ibm.com \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=gor@linux.ibm.com \
    --cc=hca@linux.ibm.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.