[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200313172336.1879637-1-andriin@fb.com>
Date: Fri, 13 Mar 2020 10:23:32 -0700
From: Andrii Nakryiko <andriin@...com>
To: <bpf@...r.kernel.org>, <netdev@...r.kernel.org>, <ast@...com>,
<daniel@...earbox.net>
CC: <andrii.nakryiko@...il.com>, <kernel-team@...com>,
Andrii Nakryiko <andriin@...com>
Subject: [PATCH bpf-next 0/4] CO-RE candidate matching fix and tracing test
This patch set fixes bug in CO-RE relocation candidate finding logic, which
currently allows matching against forward declarations, functions, and other
named types, even though it makes no sense to even attempt. As part of
verifying the fix, add test using vmlinux.h with preserve_access_index
attribute and utilizing struct pt_regs heavily to trace nanosleep syscall
using 5 different types of tracing BPF programs.
This test also demonstrated problems using struct pt_regs in syscall
tracepoints and required a new set of macro, which were added in patch #3 into
bpf_tracing.h.
Patch #1 fixes annoying issue with selftest failure messages being out of
sync.
v1->v2:
- drop unused handle__probed() function (Martin).
Andrii Nakryiko (4):
selftests/bpf: ensure consistent test failure output
libbpf: ignore incompatible types with matching name during CO-RE
relocation
libbpf: provide CO-RE variants of PT_REGS macros
selftests/bpf: add vmlinux.h selftest exercising tracing of syscalls
tools/lib/bpf/bpf_tracing.h | 103 ++++++++++++++++++
tools/lib/bpf/libbpf.c | 4 +
tools/testing/selftests/bpf/Makefile | 7 +-
.../selftests/bpf/prog_tests/vmlinux.c | 43 ++++++++
.../selftests/bpf/progs/test_vmlinux.c | 84 ++++++++++++++
tools/testing/selftests/bpf/test_progs.c | 10 +-
tools/testing/selftests/bpf/test_progs.h | 8 +-
7 files changed, 249 insertions(+), 10 deletions(-)
create mode 100644 tools/testing/selftests/bpf/prog_tests/vmlinux.c
create mode 100644 tools/testing/selftests/bpf/progs/test_vmlinux.c
--
2.17.1
Powered by blists - more mailing lists