lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sun, 1 May 2022 20:51:17 +0200
From:   Mauro Rossi <issor.oruam@...il.com>
To:     "Russell King (Oracle)" <linux@...linux.org.uk>,
        masahiroy@...nel.org, michal.lkml@...kovi.net
Cc:     netdev@...r.kernel.org, kabel@...nel.org,
        Chih-Wei Huang <cwhuang@...roid-x86.org>
Subject: Re: FYI: net/phy/marvell10g: android kernel builing error due to
 modpost error

On Tue, Apr 19, 2022 at 6:39 PM Mauro Rossi <issor.oruam@...il.com> wrote:
>
> Hi Russell,
>
> On Mon, Apr 18, 2022 at 12:08 PM Russell King (Oracle)
> <linux@...linux.org.uk> wrote:
> >
> > On Mon, Apr 18, 2022 at 11:22:12AM +0200, Mauro Rossi wrote:
> > > At the final stage of building  Linux 5.18-rc3 with the necessary AOSP
> > > changes, I am getting the following building error:
> > >
> > >   MODPOST modules-only.symvers
> > > ERROR: modpost: "__compiletime_assert_344"
> > > [drivers/net/phy/marvell10g.ko] undefined!
> > > make[2]: *** [/home/utente/r-x86_kernel/kernel/scripts/Makefile.modpost:134:
> > > modules-only.symvers] Error 1
> > > make[2]: *** Deleting file 'modules-only.symvers'
> > > make[1]: *** [/home/utente/r-x86_kernel/kernel/Makefile:1749: modules] Error 2
> > > make[1]: *** Waiting for unfinished jobs....
> > >
> > > It never happened before throughout all my previous android-x86 kernel
> > > rc cycle build tests, which spanned from linux version 5.10 to linux
> > > version 5.18rc
> >
> > As far as I'm aware, with mainline kernels, marvell10g builds fine.
>
> Thanks for response, I will also check that when
> https://android.googlesource.com/kernel/common-patches/ becomes
> available for kernel-5.18rc(s)
>
> > I'm not sure how to work back from "__compiletime_assert_344" to
> > where the problem could be. The "344" appears to be generated by
> > the __COUNTER__ macro - and I don't know how that macro works (debian
> > annoyingly don't package the GCC info docs, and the info files I have
> > are out of date.)
>
> Looking at the error printout, it seams indeed that modpost parsed
> modules-only.symvers file line-by-line
> and (my assumption, correct me if I may be wrong) encountered some
> 'undefined!' symbol at line 344 of  modules-only.symvers and pointed
> out that marvell10g.ko module is the one associated with the missing
> symbol
>
> I have tried to copy
> $OUT/target/product/x86_64/obj/kernel/modules-only.symvers to be able
> to inspect which symbol is listed at line 344,
> but even with "watch -n 0.1 cp ..." command I am not able to save the
> generated modules-only.symvers before it is deleted, therefore I am
> not able to inspect line 344
>
> Is there a way to have modpost modified for printing the symbol
> instead of the "indirection" of "__compiletime_assert_344" ?
>
> As other info, I had to cross compile using prebuilt clang 11.0.2
> (kernel version constraint) and set  LLVM_IAS=0 to disable the llvm
> integrated assembler to be able to build, but I don't think that
> should cause the missing symbol as I don't see any assembler code is
> needed to build marvell10g.ko module
>
> KR
> Mauro

Hello,

I am adding script/mod/modpost.c mantainers to consult them, as I am
not much familiar with the meaning of the error

I am building the kernel with Android Build System as part of our
iso_img target build, gcc based build has always been successful,
while llvm based build is not working and generates the following
error, which we are not able to interpret.

ERROR: modpost: "__compiletime_assert_344"
[drivers/net/phy/marvell10g.ko] undefined!

"__compiletime_assert_344" is obviously not a symbol
used/needed/exported by marvell10g.ko

I have also tried with different build machines and different kernel
versions i.e. 5.17 and 5.16
the 344 number changes, but the modpost error at marvell10g.ko is always there.

This is how to reproduce:

CONFIG_MARVELL_PHY=m
CONFIG_MARVELL_10G_PHY=m

Could you please help us to understand the reason for the error and
how to avoid it?
Thank you

Mauro
android-x86 team

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ