Cc. Jiri Olsa + Arnaldo
On 14/07/2021 09.06, John Hubbard wrote:
On 7/13/21 8:21 AM, Mel Gorman wrote:
From: Matteo Croce <mcroce@xxxxxxxxxxxxx>
This reverts commit f7173090033c70886d925995e9dfdfb76dbb2441.
Fix an unresolved symbol error when CONFIG_DEBUG_INFO_BTF=y:
LD vmlinux
BTFIDS vmlinux
FAILED unresolved symbol should_fail_alloc_page
make: *** [Makefile:1199: vmlinux] Error 255
make: *** Deleting file 'vmlinux'
Yes! I ran into this yesterday. Your patch fixes this build failure
for me, so feel free to add:
Tested-by: John Hubbard <jhubbard@xxxxxxxxxx>
However, I should add that I'm still seeing another build failure, after
fixing the above:
LD vmlinux
BTFIDS vmlinux
FAILED elf_update(WRITE): no error
This elf_update(WRITE) error is new to me.
make: *** [Makefile:1176: vmlinux] Error 255
make: *** Deleting file 'vmlinux'
It is annoying that vmlinux is deleted in this case, because I usually
give Jiri the output from 'resolve_btfids -v' on vmlinux.
$ ./tools/bpf/resolve_btfids/resolve_btfids -v vmlinux.failed
You can do:
$ git diff
diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
index 3b261b0f74f0..02dec10a7d75 100755
--- a/scripts/link-vmlinux.sh
+++ b/scripts/link-vmlinux.sh
@@ -302,7 +302,8 @@ cleanup()
rm -f .tmp_symversions.lds
rm -f .tmp_vmlinux*
rm -f System.map
- rm -f vmlinux
+ # rm -f vmlinux
+ mv vmlinux vmlinux.failed
rm -f vmlinux.o
}
...and un-setting CONFIG_DEBUG_INFO_BTF makes that disappear. Maybe someone
who is understands the BTFIDS build step can shed some light on that; I'm
not there yet. :)
I'm just a user/consume of output from the BTFIDS build step, I think
Jiri Olsa own the tool resolve_btfids, and ACME pahole. I've hit a
number of issues in the past that Jiri and ACME help resolve quickly.
The most efficient solution I've found was to upgrade pahole to a newer
version.
What version of pahole does your build system have?
What is your GCC version?
--Jesper