On Wed, Nov 27, 2024 at 12:58 AM Sedat Dilek <sedat.dilek@xxxxxxxxx> wrote: > > When playing with gendwarfksyms v6 from Sami Tolvanen I noticed: The gendwarfksyms is unrelated. > > $ LC_ALL=C ls -alth .tmp_vmlinux* > > -rw-rw-r-- 1 dileks dileks 3.1M Nov 22 20:52 .tmp_vmlinux2.kallsyms.o > -rw-rw-r-- 1 dileks dileks 34M Nov 22 20:52 .tmp_vmlinux2.kallsyms.S > -rw-rw-r-- 1 dileks dileks 6.5M Nov 22 20:52 .tmp_vmlinux2.syms > -rwxrwxr-x 1 dileks dileks 101M Nov 22 20:52 .tmp_vmlinux2 > > -rw-rw-r-- 1 dileks dileks 3.1M Nov 22 20:52 .tmp_vmlinux1.kallsyms.o > -rw-rw-r-- 1 dileks dileks 34M Nov 22 20:52 .tmp_vmlinux1.kallsyms.S > -rw-rw-r-- 1 dileks dileks 6.5M Nov 22 20:52 .tmp_vmlinux1.syms > -rwxrwxr-x 1 dileks dileks 52M Nov 22 20:52 .tmp_vmlinux1.btf.o > -rwxrwxr-x 1 dileks dileks 514M Nov 22 20:52 .tmp_vmlinux1 > > -rw-rw-r-- 1 dileks dileks 2.1K Nov 22 20:51 .tmp_vmlinux0.kallsyms.o > -rw-rw-r-- 1 dileks dileks 6.3K Nov 22 20:51 .tmp_vmlinux0.kallsyms.S > -rw-rw-r-- 1 dileks dileks 0 Nov 22 20:51 .tmp_vmlinux.kallsyms0.syms > > .tmp_vmlinux.kallsyms0.syms is NULL byte - it's a dummy file. > > Further looking at the other .tmp_vmlinux syms files: > > .tmp_vmlinux2.syms > .tmp_vmlinux1.syms > .tmp_vmlinux.kallsyms0.syms > > Change the naming of file > > .tmp_vmlinux.kallsyms0.syms -> .tmp_vmlinux0.syms > > While at this, fix the comments in scripts/link-vmlinux.sh. > > INFO: v2 is based on Linux v6.12 > > Link: https://github.com/samitolvanen/linux/commits/gendwarfksyms-v6 > Link: https://lore.kernel.org/all/CA+icZUXvu0Kw8RH1ZGBKgYGG-8u9x8BbsEkjtm4vSVKkXPTg+Q@xxxxxxxxxxxxxx/ > Link: https://lore.kernel.org/all/20241123132237.15700-1-sedat.dilek@xxxxxxxxx/ (v1) I removed unnecessary information. I left only the following description. ------------>8------------------ kbuild: rename .tmp_vmlinux.kallsyms0.syms to .tmp_vmlinux0.syms Change the naming for consistency. While at this, fix the comments in scripts/link-vmlinux.sh. ------------>8------------------ Applied to linux-kbuild. Thanks. > Signed-off-by: Sedat Dilek <sedat.dilek@xxxxxxxxx> > --- > v1 -> v2: > - Add commit description and follow naming consistency > as requested by Masahiroy san. -dileks > > scripts/link-vmlinux.sh | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh > index a9b3f34a78d2..239fe036606f 100755 > --- a/scripts/link-vmlinux.sh > +++ b/scripts/link-vmlinux.sh > @@ -203,8 +203,8 @@ kallsymso= > strip_debug= > > if is_enabled CONFIG_KALLSYMS; then > - true > .tmp_vmlinux.kallsyms0.syms > - kallsyms .tmp_vmlinux.kallsyms0.syms .tmp_vmlinux0.kallsyms > + true > .tmp_vmlinux0.syms > + kallsyms .tmp_vmlinux0.syms .tmp_vmlinux0.kallsyms > fi > > if is_enabled CONFIG_KALLSYMS || is_enabled CONFIG_DEBUG_INFO_BTF; then > @@ -231,14 +231,14 @@ if is_enabled CONFIG_KALLSYMS; then > # Generate section listing all symbols and add it into vmlinux > # It's a four step process: > # 0) Generate a dummy __kallsyms with empty symbol list. > - # 1) Link .tmp_vmlinux.kallsyms1 so it has all symbols and sections, > + # 1) Link .tmp_vmlinux1.kallsyms so it has all symbols and sections, > # with a dummy __kallsyms. > - # Running kallsyms on that gives us .tmp_kallsyms1.o with > + # Running kallsyms on that gives us .tmp_vmlinux1.kallsyms.o with > # the right size > - # 2) Link .tmp_vmlinux.kallsyms2 so it now has a __kallsyms section of > + # 2) Link .tmp_vmlinux2.kallsyms so it now has a __kallsyms section of > # the right size, but due to the added section, some > # addresses have shifted. > - # From here, we generate a correct .tmp_vmlinux.kallsyms2.o > + # From here, we generate a correct .tmp_vmlinux2.kallsyms.o > # 3) That link may have expanded the kernel image enough that > # more linker branch stubs / trampolines had to be added, which > # introduces new names, which further expands kallsyms. Do another > -- > 2.45.2 > > -- Best Regards Masahiro Yamada