BPF_TRACE_FEXIT
case BPF_TRACE_FEXIT:
case BPF_TRACE_FEXIT:
if (eatype == BPF_TRACE_FEXIT ||
prog->expected_attach_type != BPF_TRACE_FEXIT &&
case BPF_TRACE_FEXIT:
if (eatype == BPF_TRACE_FENTRY || eatype == BPF_TRACE_FEXIT ||
case BPF_TRACE_FEXIT:
case BPF_TRACE_FEXIT:
tgt_prog->expected_attach_type == BPF_TRACE_FEXIT ||
case BPF_TRACE_FEXIT:
case BPF_TRACE_FEXIT:
} else if ((prog->expected_attach_type == BPF_TRACE_FEXIT ||
case BPF_TRACE_FEXIT:
case BPF_TRACE_FEXIT:
case BPF_TRACE_FEXIT: return "fexit";
case BPF_TRACE_FEXIT:
case BPF_TRACE_FEXIT:
SEC_DEF("fexit+", TRACING, BPF_TRACE_FEXIT, SEC_ATTACH_BTF, attach_trace),
SEC_DEF("fexit.s+", TRACING, BPF_TRACE_FEXIT, SEC_ATTACH_BTF | SEC_SLEEPABLE, attach_trace),
[BPF_TRACE_FEXIT] = "trace_fexit",
fexit_fd = bpf_link_create(prog_fd, 0, BPF_TRACE_FEXIT, &link_opts);
.expected_attach_type = BPF_TRACE_FEXIT,
link_fd[i] = bpf_link_create(fexit_fd[i], 0, BPF_TRACE_FEXIT, NULL);
bpf_program__set_expected_attach_type(prog, BPF_TRACE_FEXIT);