On 01. 05. 21, 8:45, Jiri Slaby wrote:
On 30. 04. 21, 19:47, Michal Suchánek wrote:
CC another Jiri
On Tue, Apr 27, 2021 at 02:12:37PM +0200, Michal Suchánek wrote:
On Mon, Apr 26, 2021 at 09:16:36PM +0200, Jiri Olsa wrote:
On Mon, Apr 26, 2021 at 06:03:19PM +0200, Jiri Olsa wrote:
On Mon, Apr 26, 2021 at 08:41:49AM -0700, Yonghong Song wrote:
On 4/26/21 5:14 AM, Michal Suchánek wrote:
On Mon, Apr 26, 2021 at 02:12:20PM +0200, Michal Suchánek wrote:
On Mon, Apr 26, 2021 at 01:32:15PM +0200, Michal Suchánek wrote:
On Sun, Apr 25, 2021 at 01:15:45PM +0200, Michal Suchánek wrote:
On Fri, Apr 23, 2021 at 07:55:28PM +0200, Michal Suchánek wrote:
On Fri, Apr 23, 2021 at 07:41:29AM -0700, Yonghong Song wrote:
On 4/23/21 6:05 AM, Michal Suchánek wrote:
Hello,
I see this build error in linux-next (config attached).
[ 4939s] LD vmlinux
[ 4959s] BTFIDS vmlinux
[ 4959s] FAILED unresolved symbol cubictcp_state
[ 4960s] make[1]: ***
[/home/abuild/rpmbuild/BUILD/kernel-vanilla-5.12~rc8.next.20210422/linux-5.12-rc8-next-20210422/Makefile:1277:
vmlinux] Error 255
[ 4960s] make: *** [../Makefile:222: __sub-make] Error 2
this one was reported by Jesper and was fixed by upgrading pahole
that contains the new function generation fixes (v1.19)
Looks like you have DYNAMIC_FTRACE config option enabled
already.
Could you try a later version of pahole?
Is this requireent new?
I have pahole 1.20, and master does build without problems.
If newer version is needed can a check be added?
With dwarves 1.21 some architectures are fixed and some report
other
missing symbol. Definitely an improvenent.
I see some new type support was added so it makes sense if
that type is
used the new dwarves are needed.
Ok, here is the current failure with dwarves 1.21 on 5.12:
[ 2548s] LD vmlinux
[ 2557s] BTFIDS vmlinux
[ 2557s] FAILED unresolved symbol vfs_truncate
[ 2558s] make[1]: ***
[/home/abuild/rpmbuild/BUILD/kernel-kvmsmall-5.12.0/linux-5.12/Makefile:1213:
vmlinux] Error 255
This is PPC64, from attached config:
CONFIG_PPC64=y
I don't have environment to cross-compile for PPC64.
Jiri, could you take a look? Thanks!
looks like vfs_truncate did not get into BTF data,
I'll try to reproduce
_None_ of the functions are generated by pahole -J from debuginfo on
ppc64. debuginfo appears to be correct. Neither pahole -J fs/open.o
works correctly. collect_functions in dwarves seems to be defunct on
ppc64... "functions" array is bogus (so find_function -- the bsearch --
fails).
It's not that bogus. I forgot an asterisk:
#0 find_function (btfe=0x100269f80, name=0x10024631c "stream_open") at /usr/src/debug/dwarves-1.21-1.1.ppc64/btf_encoder.c:350
(gdb) p (*functions)@84
$5 = {{name = 0x7ffff68e0922 ".__se_compat_sys_ftruncate", addr = 75232, size = 72, sh_addr = 65536, generated = false}, {
name = 0x7ffff68e019e ".__se_compat_sys_open", addr = 80592, size = 216, sh_addr = 65536, generated = false}, {
name = 0x7ffff68e0076 ".__se_compat_sys_openat", addr = 80816, size = 232, sh_addr = 65536, generated = false}, {
name = 0x7ffff68e0908 ".__se_compat_sys_truncate", addr = 74304, size = 100, sh_addr = 65536, generated = false}, {
...
name = 0x7ffff68e0808 ".stream_open", addr = 65824, size = 72, sh_addr = 65536, generated = false}, {
...
name = 0x7ffff68e0751 ".vfs_truncate", addr = 73392, size = 544, sh_addr = 65536, generated = false}}
The dot makes the difference, of course. The question is why is it
there? I keep looking into it. Only if someone has an immediate idea...
thanks,
--
js
suse labs