Support bpf_get_func_arg() for BPF_TRACE_RAW_TP by getting the function argument count from "prog->aux->attach_func_proto" during verifier inline.
Changes v5 -> v4: * some format adjustment in the 1st patch * v4: https://lore.kernel.org/bpf/[email protected]/ Changes v4 -> v3: * fix the error of using bpf_get_func_arg() for BPF_TRACE_ITER * v3: https://lore.kernel.org/bpf/[email protected]/ Changes v3 -> v2: * remove unnecessary NULL checking for prog->aux->attach_func_proto * v2: https://lore.kernel.org/bpf/[email protected]/ Changes v2 -> v1: * for nr_args, skip first 'void *__data' argument in btf_trace_##name typedef * check the result4 and result5 in the selftests * v1: https://lore.kernel.org/bpf/[email protected]/ Menglong Dong (2): bpf: support bpf_get_func_arg() for BPF_TRACE_RAW_TP selftests/bpf: test bpf_get_func_arg() for tp_btf kernel/bpf/verifier.c | 22 ++++++++-- kernel/trace/bpf_trace.c | 10 ++++- .../bpf/prog_tests/get_func_args_test.c | 3 ++ .../selftests/bpf/progs/get_func_args_test.c | 44 +++++++++++++++++++ .../bpf/test_kmods/bpf_testmod-events.h | 10 +++++ .../selftests/bpf/test_kmods/bpf_testmod.c | 4 ++ 6 files changed, 87 insertions(+), 6 deletions(-) -- 2.52.0
