]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
tools/bpftool: Fix error handing in do_skeleton()
authorYueHaibing <yuehaibing@huawei.com>
Fri, 17 Jul 2020 12:30:59 +0000 (20:30 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Aug 2020 06:23:59 +0000 (08:23 +0200)
[ 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

index f5960b48c8615a700275d67c9fa4269b09fc055b..5ff951e08c7409e59efeae3ff6333d6c880992fd 100644 (file)
@@ -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;
        }