Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> writes: > On Wed, Feb 12, 2020 at 5:05 AM Toke Høiland-Jørgensen <toke@xxxxxxxxxx> wrote: >> >> Eelco Chaudron <echaudro@xxxxxxxxxx> writes: >> >> > Currently when you want to attach a trace program to a bpf program >> > the section name needs to match the tracepoint/function semantics. >> > >> > However the addition of the bpf_program__set_attach_target() API >> > allows you to specify the tracepoint/function dynamically. >> > >> > The call flow would look something like this: >> > >> > xdp_fd = bpf_prog_get_fd_by_id(id); >> > trace_obj = bpf_object__open_file("func.o", NULL); >> > prog = bpf_object__find_program_by_title(trace_obj, >> > "fentry/myfunc"); >> > bpf_program__set_attach_target(prog, xdp_fd, >> > "fentry/xdpfilt_blk_all"); >> >> I think it would be better to have the attach type as a separate arg >> instead of encoding it in the function name. I.e., rather: >> >> bpf_program__set_attach_target(prog, xdp_fd, >> "xdpfilt_blk_all", BPF_TRACE_FENTRY); > > I agree about not specifying section name prefix (e.g., fentry/). But > disagree that expected attach type (BPF_TRACE_FENTRY) should be part > of this API. We already have bpf_program__set_expected_attach_type() > API, no need to duplicate it here. Ah yes, forgot about that; just keeping that and making this function name only is fine with me :) -Toke