v2: - remove vmlinux specific error info. - use builtin target .DELETE_ON_ERROR: to delete empty vmlinux.h
Changbin Du (2): libbpf: show error info about missing ".BTF" section bpf: makefiles: do not generate empty vmlinux.h
tools/bpf/bpftool/Makefile | 3 +++ tools/lib/bpf/btf.c | 1 + tools/perf/Makefile.perf | 2 ++ tools/testing/selftests/bpf/Makefile | 3 +++ 4 files changed, 9 insertions(+)
Show the real problem instead of just saying "No such file or directory".
Now will print below info: libbpf: can not find '.BTF' section Error: failed to load BTF from /home/changbin/work/linux/vmlinux: No such file or directory
Signed-off-by: Changbin Du changbin.du@gmail.com --- tools/lib/bpf/btf.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/tools/lib/bpf/btf.c b/tools/lib/bpf/btf.c index d88647da2c7f..1adc0f6019a0 100644 --- a/tools/lib/bpf/btf.c +++ b/tools/lib/bpf/btf.c @@ -990,6 +990,7 @@ static struct btf *btf_parse_elf(const char *path, struct btf *base_btf, err = 0;
if (!btf_data) { + pr_warn("can not find '%s' section\n", BTF_ELF_SEC); err = -ENOENT; goto done; }
On Tue, Nov 29, 2022 at 5:42 AM Changbin Du changbin.du@gmail.com wrote:
Show the real problem instead of just saying "No such file or directory".
Now will print below info: libbpf: can not find '.BTF' section Error: failed to load BTF from /home/changbin/work/linux/vmlinux: No such file or directory
Signed-off-by: Changbin Du changbin.du@gmail.com
tools/lib/bpf/btf.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/tools/lib/bpf/btf.c b/tools/lib/bpf/btf.c index d88647da2c7f..1adc0f6019a0 100644 --- a/tools/lib/bpf/btf.c +++ b/tools/lib/bpf/btf.c @@ -990,6 +990,7 @@ static struct btf *btf_parse_elf(const char *path, struct btf *base_btf, err = 0;
if (!btf_data) {
pr_warn("can not find '%s' section\n", BTF_ELF_SEC);
let's use consistent form of error messages:
pr_warn("failed to find '%s' ELF section in %s\n", BTF_ELF_SEC, path);
err = -ENOENT; goto done; }
-- 2.37.2
On Wed, Nov 30, 2022 at 04:55:13PM -0800, Andrii Nakryiko wrote:
On Tue, Nov 29, 2022 at 5:42 AM Changbin Du changbin.du@gmail.com wrote:
Show the real problem instead of just saying "No such file or directory".
Now will print below info: libbpf: can not find '.BTF' section Error: failed to load BTF from /home/changbin/work/linux/vmlinux: No such file or directory
Signed-off-by: Changbin Du changbin.du@gmail.com
tools/lib/bpf/btf.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/tools/lib/bpf/btf.c b/tools/lib/bpf/btf.c index d88647da2c7f..1adc0f6019a0 100644 --- a/tools/lib/bpf/btf.c +++ b/tools/lib/bpf/btf.c @@ -990,6 +990,7 @@ static struct btf *btf_parse_elf(const char *path, struct btf *base_btf, err = 0;
if (!btf_data) {
pr_warn("can not find '%s' section\n", BTF_ELF_SEC);
let's use consistent form of error messages:
pr_warn("failed to find '%s' ELF section in %s\n", BTF_ELF_SEC, path);
okay.
err = -ENOENT; goto done; }
-- 2.37.2
Remove the empty vmlinux.h if bpftool failed to dump btf info. The emptry vmlinux.h can hide real error when reading output of make.
This is done by adding .DELETE_ON_ERROR special target in related makefiles.
Signed-off-by: Changbin Du changbin.du@gmail.com --- tools/bpf/bpftool/Makefile | 3 +++ tools/perf/Makefile.perf | 2 ++ tools/testing/selftests/bpf/Makefile | 3 +++ 3 files changed, 8 insertions(+)
diff --git a/tools/bpf/bpftool/Makefile b/tools/bpf/bpftool/Makefile index 4a95c017ad4c..f6b1e65085db 100644 --- a/tools/bpf/bpftool/Makefile +++ b/tools/bpf/bpftool/Makefile @@ -265,3 +265,6 @@ FORCE: .PHONY: all FORCE bootstrap clean install-bin install uninstall .PHONY: doc doc-clean doc-install doc-uninstall .DEFAULT_GOAL := all + +# Delete partially updated (corrupted) files on error +.DELETE_ON_ERROR: diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf index a432e59afc42..265254fc641a 100644 --- a/tools/perf/Makefile.perf +++ b/tools/perf/Makefile.perf @@ -1149,3 +1149,5 @@ FORCE: .PHONY: libtraceevent_plugins archheaders
endif # force_fixdep + +.DELETE_ON_ERROR: diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile index e6cf21fad69f..f41c4b011221 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -617,3 +617,6 @@ EXTRA_CLEAN := $(TEST_CUSTOM_PROGS) $(SCRATCH_DIR) $(HOST_SCRATCH_DIR) \ liburandom_read.so)
.PHONY: docs docs-clean + +# Delete partially updated (corrupted) files on error +.DELETE_ON_ERROR:
On Tue, Nov 29, 2022 at 5:42 AM Changbin Du changbin.du@gmail.com wrote:
Remove the empty vmlinux.h if bpftool failed to dump btf info. The emptry vmlinux.h can hide real error when reading output
typo: empty
of make.
This is done by adding .DELETE_ON_ERROR special target in related makefiles.
Signed-off-by: Changbin Du changbin.du@gmail.com
tools/bpf/bpftool/Makefile | 3 +++ tools/perf/Makefile.perf | 2 ++ tools/testing/selftests/bpf/Makefile | 3 +++ 3 files changed, 8 insertions(+)
diff --git a/tools/bpf/bpftool/Makefile b/tools/bpf/bpftool/Makefile index 4a95c017ad4c..f6b1e65085db 100644 --- a/tools/bpf/bpftool/Makefile +++ b/tools/bpf/bpftool/Makefile @@ -265,3 +265,6 @@ FORCE: .PHONY: all FORCE bootstrap clean install-bin install uninstall .PHONY: doc doc-clean doc-install doc-uninstall .DEFAULT_GOAL := all
+# Delete partially updated (corrupted) files on error +.DELETE_ON_ERROR: diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf index a432e59afc42..265254fc641a 100644 --- a/tools/perf/Makefile.perf +++ b/tools/perf/Makefile.perf @@ -1149,3 +1149,5 @@ FORCE: .PHONY: libtraceevent_plugins archheaders
endif # force_fixdep
+.DELETE_ON_ERROR:
please split out perf changes, they should go through perf tree
diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile index e6cf21fad69f..f41c4b011221 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -617,3 +617,6 @@ EXTRA_CLEAN := $(TEST_CUSTOM_PROGS) $(SCRATCH_DIR) $(HOST_SCRATCH_DIR) \ liburandom_read.so)
.PHONY: docs docs-clean
+# Delete partially updated (corrupted) files on error
+.DELETE_ON_ERROR:
2.37.2
On Wed, Nov 30, 2022 at 04:52:11PM -0800, Andrii Nakryiko wrote:
On Tue, Nov 29, 2022 at 5:42 AM Changbin Du changbin.du@gmail.com wrote:
Remove the empty vmlinux.h if bpftool failed to dump btf info. The emptry vmlinux.h can hide real error when reading output
typo: empty
Will be fixed, thanks.
of make.
This is done by adding .DELETE_ON_ERROR special target in related makefiles.
Signed-off-by: Changbin Du changbin.du@gmail.com
tools/bpf/bpftool/Makefile | 3 +++ tools/perf/Makefile.perf | 2 ++ tools/testing/selftests/bpf/Makefile | 3 +++ 3 files changed, 8 insertions(+)
diff --git a/tools/bpf/bpftool/Makefile b/tools/bpf/bpftool/Makefile index 4a95c017ad4c..f6b1e65085db 100644 --- a/tools/bpf/bpftool/Makefile +++ b/tools/bpf/bpftool/Makefile @@ -265,3 +265,6 @@ FORCE: .PHONY: all FORCE bootstrap clean install-bin install uninstall .PHONY: doc doc-clean doc-install doc-uninstall .DEFAULT_GOAL := all
+# Delete partially updated (corrupted) files on error +.DELETE_ON_ERROR: diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf index a432e59afc42..265254fc641a 100644 --- a/tools/perf/Makefile.perf +++ b/tools/perf/Makefile.perf @@ -1149,3 +1149,5 @@ FORCE: .PHONY: libtraceevent_plugins archheaders
endif # force_fixdep
+.DELETE_ON_ERROR:
please split out perf changes, they should go through perf tree
sure, I'll send a standalone patch to perf tree.
diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile index e6cf21fad69f..f41c4b011221 100644 --- a/tools/testing/selftests/bpf/Makefile +++ b/tools/testing/selftests/bpf/Makefile @@ -617,3 +617,6 @@ EXTRA_CLEAN := $(TEST_CUSTOM_PROGS) $(SCRATCH_DIR) $(HOST_SCRATCH_DIR) \ liburandom_read.so)
.PHONY: docs docs-clean
+# Delete partially updated (corrupted) files on error
+.DELETE_ON_ERROR:
2.37.2
On Tue, Nov 29, 2022 at 5:42 AM Changbin Du changbin.du@gmail.com wrote:
please fill out cover letter
v2:
- remove vmlinux specific error info.
- use builtin target .DELETE_ON_ERROR: to delete empty vmlinux.h
Changbin Du (2): libbpf: show error info about missing ".BTF" section bpf: makefiles: do not generate empty vmlinux.h
tools/bpf/bpftool/Makefile | 3 +++ tools/lib/bpf/btf.c | 1 + tools/perf/Makefile.perf | 2 ++ tools/testing/selftests/bpf/Makefile | 3 +++ 4 files changed, 9 insertions(+)
-- 2.37.2
linux-kselftest-mirror@lists.linaro.org