| From 7b920abfd809e4232d69237f241f023d032cee3b Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 17 Jul 2020 20:30:59 +0800 |
| Subject: tools/bpftool: Fix error handing in do_skeleton() |
| |
| From: YueHaibing <yuehaibing@huawei.com> |
| |
| [ Upstream commit 956fcfcd359512f15b19bcd157fa8206ed26605b ] |
| |
| Fix pass 0 to PTR_ERR, also dump more err info using |
| libbpf_strerror. |
| |
| Fixes: 5dc7a8b21144 ("bpftool, selftests/bpf: Embed object file inside skeleton") |
| Signed-off-by: YueHaibing <yuehaibing@huawei.com> |
| Signed-off-by: Alexei Starovoitov <ast@kernel.org> |
| Reviewed-by: Quentin Monnet <quentin@isovalent.com> |
| Link: https://lore.kernel.org/bpf/20200717123059.29624-1-yuehaibing@huawei.com |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| tools/bpf/bpftool/gen.c | 5 ++++- |
| 1 file changed, 4 insertions(+), 1 deletion(-) |
| |
| diff --git a/tools/bpf/bpftool/gen.c b/tools/bpf/bpftool/gen.c |
| index f5960b48c8615..5ff951e08c740 100644 |
| --- a/tools/bpf/bpftool/gen.c |
| +++ b/tools/bpf/bpftool/gen.c |
| @@ -307,8 +307,11 @@ static int do_skeleton(int argc, char **argv) |
| opts.object_name = obj_name; |
| obj = bpf_object__open_mem(obj_data, file_sz, &opts); |
| if (IS_ERR(obj)) { |
| + char err_buf[256]; |
| + |
| + libbpf_strerror(PTR_ERR(obj), err_buf, sizeof(err_buf)); |
| + p_err("failed to open BPF object file: %s", err_buf); |
| obj = NULL; |
| - p_err("failed to open BPF object file: %ld", PTR_ERR(obj)); |
| goto out; |
| } |
| |
| -- |
| 2.25.1 |
| |