bpf: remove tracepoints from bpf core
authorAlexei Starovoitov <ast@kernel.org>
Sun, 29 Apr 2018 02:56:37 +0000 (19:56 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Mon, 30 Apr 2018 08:55:56 +0000 (10:55 +0200)
commit4d220ed0f8140c478ab7b0a14d96821da639b646
treea892f9547a7cde363ae9276a827a7ed11b385bf7
parent34745aed515c1d6040110ff82378056533518eb6
bpf: remove tracepoints from bpf core

tracepoints to bpf core were added as a way to provide introspection
to bpf programs and maps, but after some time it became clear that
this approach is inadequate, so prog_id, map_id and corresponding
get_next_id, get_fd_by_id, get_info_by_fd, prog_query APIs were
introduced and fully adopted by bpftool and other applications.
The tracepoints in bpf core started to rot and causing syzbot warnings:
WARNING: CPU: 0 PID: 3008 at kernel/trace/trace_event_perf.c:274
Kernel panic - not syncing: panic_on_warn set ...
perf_trace_bpf_map_keyval+0x260/0xbd0 include/trace/events/bpf.h:228
trace_bpf_map_update_elem include/trace/events/bpf.h:274 [inline]
map_update_elem kernel/bpf/syscall.c:597 [inline]
SYSC_bpf kernel/bpf/syscall.c:1478 [inline]
Hence this patch deletes tracepoints in bpf core.

Reported-by: Eric Biggers <ebiggers3@gmail.com>
Reported-by: syzbot <bot+a9dbb3c3e64b62536a4bc5ee7bbd4ca627566188@syzkaller.appspotmail.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
MAINTAINERS
include/linux/bpf_trace.h
include/trace/events/bpf.h [deleted file]
kernel/bpf/core.c
kernel/bpf/inode.c
kernel/bpf/syscall.c