On Wed, Oct 9, 2019 at 9:16 PM Alexei Starovoitov <ast@xxxxxxxxxx> wrote: > > BTF type id specified at program load time has all > necessary information to attach that program to raw tracepoint. > Use kernel type name to find raw tracepoint. > > Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxx> > --- > kernel/bpf/syscall.c | 67 +++++++++++++++++++++++++++++--------------- > 1 file changed, 44 insertions(+), 23 deletions(-) > > diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c > index b56c482c9760..03f36e73d84a 100644 > --- a/kernel/bpf/syscall.c > +++ b/kernel/bpf/syscall.c > @@ -1816,17 +1816,49 @@ static int bpf_raw_tracepoint_open(const union bpf_attr *attr) > struct bpf_raw_tracepoint *raw_tp; > struct bpf_raw_event_map *btp; > struct bpf_prog *prog; > - char tp_name[128]; > + const char *tp_name; > + char buf[128]; > int tp_fd, err; Shouldn't there be CHECK_ATTR(BPF_RAW_TRACEPOINT_OPEN) somewhere here? Other than this pre-existing issue, everything else looks reasonable. [...]