Commit dc3ca5cf authored by Tobias Klauser's avatar Tobias Klauser Committed by Alexei Starovoitov
Browse files

tools, bpftool: Print correct error message when failing to load BTF



btf__parse_raw and btf__parse_elf return negative error numbers wrapped
in an ERR_PTR, so the extracted value needs to be negated before passing
them to strerror which expects a positive error number.

Before:
  Error: failed to load BTF from .../vmlinux: Unknown error -2

After:
  Error: failed to load BTF from .../vmlinux: No such file or directory

Signed-off-by: default avatarTobias Klauser <tklauser@distanz.ch>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20200525135421.4154-1-tklauser@distanz.ch


Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
parent 73a4f040
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -553,7 +553,7 @@ static int do_dump(int argc, char **argv)
			btf = btf__parse_elf(*argv, NULL);

		if (IS_ERR(btf)) {
			err = PTR_ERR(btf);
			err = -PTR_ERR(btf);
			btf = NULL;
			p_err("failed to load BTF from %s: %s",
			      *argv, strerror(err));