Re: linux-next failing build due to missing cubictcp_state symbol
From: Jiri Slaby <jirislaby@kernel.org>
Date: 2021-05-03 06:11:58
Also in:
bpf, lkml
On 01. 05. 21, 8:45, Jiri Slaby wrote:
On 30. 04. 21, 19:47, Michal Suchánek wrote:quoted
CC another Jiri On Tue, Apr 27, 2021 at 02:12:37PM +0200, Michal Suchánek wrote:quoted
On Mon, Apr 26, 2021 at 09:16:36PM +0200, Jiri Olsa wrote:quoted
On Mon, Apr 26, 2021 at 06:03:19PM +0200, Jiri Olsa wrote:quoted
On Mon, Apr 26, 2021 at 08:41:49AM -0700, Yonghong Song wrote:quoted
On 4/26/21 5:14 AM, Michal Suchánek wrote:quoted
On Mon, Apr 26, 2021 at 02:12:20PM +0200, Michal Suchánek wrote:quoted
On Mon, Apr 26, 2021 at 01:32:15PM +0200, Michal Suchánek wrote:quoted
On Sun, Apr 25, 2021 at 01:15:45PM +0200, Michal Suchánek wrote:quoted
On Fri, Apr 23, 2021 at 07:55:28PM +0200, Michal Suchánek wrote:quoted
On Fri, Apr 23, 2021 at 07:41:29AM -0700, Yonghong Song wrote:quoted
On 4/23/21 6:05 AM, Michal Suchánek wrote:quoted
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 2this one was reported by Jesper and was fixed by upgrading pahole that contains the new function generation fixes (v1.19)quoted
quoted
quoted
quoted
quoted
quoted
quoted
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 255This 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