On Wed, Apr 01, 2026 at 04:05:02PM +0900, Hoyeon Lee wrote:
> perf_event_open_probe() and perf_event_{k,u}probe_open_legacy() helpers
> are returning negative error codes directly on failure. This commit
> changes bpf_program__attach_{k,u}probe_opts() to use those return
> values directly instead of reading -errno again.
because the errno might be changed by the error path cleanup code, right?
Acked-by: Jiri Olsa <jolsa@kernel.org>
jirka
>
> Signed-off-by: Hoyeon Lee <hoyeon.lee@suse.com>
> ---
> tools/lib/bpf/libbpf.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
> index 9ea41f40dc82..536c19c14d21 100644
> --- a/tools/lib/bpf/libbpf.c
> +++ b/tools/lib/bpf/libbpf.c
> @@ -11835,7 +11835,7 @@ bpf_program__attach_kprobe_opts(const struct bpf_program *prog,
> offset, -1 /* pid */);
> }
> if (pfd < 0) {
> - err = -errno;
> + err = pfd;
> pr_warn("prog '%s': failed to create %s '%s+0x%zx' perf event: %s\n",
> prog->name, retprobe ? "kretprobe" : "kprobe",
> func_name, offset,
> @@ -12825,7 +12825,7 @@ bpf_program__attach_uprobe_opts(const struct bpf_program *prog, pid_t pid,
> binary_path, func_offset, pid);
> }
> if (pfd < 0) {
> - err = -errno;
> + err = pfd;
> pr_warn("prog '%s': failed to create %s '%s:0x%zx' perf event: %s\n",
> prog->name, retprobe ? "uretprobe" : "uprobe",
> binary_path, func_offset,
> --
> 2.52.0
>