Re: [PATCH v6 00/10] kbuild: yet another series of cleanups (modpost, LTO, MODULE_REL_CRCS, export.h)

From: Sedat Dilek
Date: Sun May 22 2022 - 05:46:22 EST


On Sun, May 22, 2022 at 8:50 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
>
> On Sun, May 22, 2022 at 10:45 AM Sedat Dilek <sedat.dilek@xxxxxxxxx> wrote:
> >
> > On Fri, May 13, 2022 at 4:31 PM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
> > >
> > > On Fri, May 13, 2022 at 8:42 PM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
> > > >
> > > >
> > > > This is the third batch of cleanups in this development cycle.
> > > >
> > >
> > >
> > > This series is available at
> > > git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git
> > > lto-cleanup-v6
> > >
> >
> > Hi Masahiro,
> >
> > I cloned the repository on top of latest Linus Git.
> >
> > Not able to boot in Quemu - Not able to boot on bare metal.
> >
> > $ grep module_layout log_quemu-5.18.0-rc7-2-amd64-clang14-lto.txt
> > 366:[ 2.173265] floppy: disagrees about version of symbol module_layout
> > 367:[ 2.198746] scsi_common: disagrees about version of symbol module_layout
> > 368:[ 2.205573] i2c_piix4: disagrees about version of symbol module_layout
> > 369:[ 2.210610] psmouse: disagrees about version of symbol module_layout
> > 370:[ 2.225138] scsi_common: disagrees about version of symbol module_layout
> > 371:[ 2.235536] scsi_common: disagrees about version of symbol module_layout
> > 375:Begin: Running /scripts/local-premount ... [ 2.298555]
> > crc32c_intel: disagrees about version of symbol module_layout
> > 376:[ 2.303335] crc32c_generic: disagrees about version of symbol
> > module_layout
> > 377:[ 2.306667] libcrc32c: disagrees about version of symbol module_layout
> >
> > Infos: LLVM-14 + CONFIG_LTO_CLANG_THIN=y
> >
> > My linux-config and qemu-log are attached.
> >
>
>
> Thanks for your testing.
>
> I was also able to reproduce this issue.
>
>
> The problematic parts are:
>
> [ 2.298555] crc32c_intel: disagrees about version of symbol module_layout
> [ 2.303335] crc32c_generic: disagrees about version of symbol module_layout
> [ 2.306667] libcrc32c: disagrees about version of symbol module_layout
>
>
>
> When CONFIG_LTO_CLANG_THIN=y,
> I cannot see any __crc_* symbols in "nm vmlinux".
>
> Perhaps, LTO might have discarded all the __crc_* symbols
> from vmlinux, but I am still checking the details...
>

Thanks for taking care.

Just for the records:

$ grep CONFIG_MODVERSIONS /boot/config-5.18.0-rc7-2-amd64-clang14-lto
CONFIG_MODVERSIONS=y

-Sedat-