Thread (5 messages) flat view 5 messages, 3 authors, 2020-09-22

Re: [PATCH bpf-next 1/2] bpf: Use --no-fail option if CONFIG_BPF is not enabled

From: Andrii Nakryiko <hidden>
Date: 2020-09-22 20:33:23
Also in: bpf

On Tue, Sep 22, 2020 at 11:48 AM Jiri Olsa [off-list ref] wrote:
On Mon, Sep 21, 2020 at 02:55:27PM -0700, Andrii Nakryiko wrote:
quoted
On Fri, Sep 18, 2020 at 5:30 AM Jiri Olsa [off-list ref] wrote:
quoted
Currently all the resolve_btfids 'users' are under CONFIG_BPF
code, so if we have CONFIG_BPF disabled, resolve_btfids will
fail, because there's no data to resolve.

In case CONFIG_BPF is disabled, using resolve_btfids --no-fail
option, that makes resolve_btfids leave quietly if there's no
data to resolve.

Fixes: c9a0f3b85e09 ("bpf: Resolve BTF IDs in vmlinux image")
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
---
If no CONFIG_BTF is specified, there is no need to even run
resolve_btfids. So why not do just that -- run resolve_btfids only
if both CONFIG_BPF and CONFIG_DEBUG_INFO_BTF are specified?
we can have CONFIG_DEBUG_INFO_BTF without CONFIG_BPF being enabled,
so we could in theory have in future some BTF ID user outside bpf code,
but I guess we can enable that, when it actually happens
Right. Let's cross that bridge when we get there.
jirka
quoted
quoted
 scripts/link-vmlinux.sh | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
index e6e2d9e5ff48..3173b8cf08cb 100755
--- a/scripts/link-vmlinux.sh
+++ b/scripts/link-vmlinux.sh
@@ -342,8 +342,13 @@ vmlinux_link vmlinux "${kallsymso}" ${btf_vmlinux_bin_o}

 # fill in BTF IDs
 if [ -n "${CONFIG_DEBUG_INFO_BTF}" ]; then
-info BTFIDS vmlinux
-${RESOLVE_BTFIDS} vmlinux
+       info BTFIDS vmlinux
+       # Let's be more permissive if CONFIG_BPF is disabled
+       # and do not fail if there's no data to resolve.
+       if [ -z "${CONFIG_BPF}" ]; then
+         no_fail=--no-fail
+       fi
+       ${RESOLVE_BTFIDS} $no_fail vmlinux
 fi

 if [ -n "${CONFIG_BUILDTIME_TABLE_SORT}" ]; then
--
2.26.2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help