Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1510500 > unrolled thread

Re: 'kbuild' merge before 4.9-rc1 breaks build and boot

Started byPeter Wu <peter@lekensteyn.nl>
First post2016-10-27 19:10 +0200
Last post2016-11-08 03:00 +0100
Articles 4 — 3 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: 'kbuild' merge before 4.9-rc1 breaks build and boot Peter Wu <peter@lekensteyn.nl> - 2016-10-27 19:10 +0200
    Re: 'kbuild' merge before 4.9-rc1 breaks build and boot Vince Weaver <vincent.weaver@maine.edu> - 2016-11-07 20:20 +0100
      Re: 'kbuild' merge before 4.9-rc1 breaks build and boot Peter Wu <peter@lekensteyn.nl> - 2016-11-07 22:40 +0100
        Re: 'kbuild' merge before 4.9-rc1 breaks build and boot Nicholas Piggin <npiggin@gmail.com> - 2016-11-08 03:00 +0100

#1510500 — Re: 'kbuild' merge before 4.9-rc1 breaks build and boot

FromPeter Wu <peter@lekensteyn.nl>
Date2016-10-27 19:10 +0200
SubjectRe: 'kbuild' merge before 4.9-rc1 breaks build and boot
Message-ID<swWlH-4Lb-27@gated-at.bofh.it>
Hey Al, Michal,

I can confirm Olivers issue, the current mainline kernel fails to boot
on kernels with CONFIG_MODVERSIONS=y. Bisection points to:

    commit 784d5699eddc55878627da20d3fe0c8542e2f1a2
    Author: Al Viro <viro@zeniv.linux.org.uk>
    Date:   Mon Jan 11 11:04:34 2016 -0500

        x86: move exports to actual definitions

        Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Good builds have a non-zero address in Module.symvers:

    0x69acdf38      memcpy  vmlinux EXPORT_SYMBOL

Bad builds have a zero address here:

    0x00000000      memcpy  vmlinux EXPORT_SYMBOL

This was encountered on Arch Linux with GCC 6.2.1 and
Linux v4.9-rc2-40-g9fe68ca. Note that the identified commit above cannot
be reverted cleanly on master.

Kind regards,
Peter

On Fri, Oct 21, 2016 at 06:23:57PM +0200, Oliver Hartkopp wrote:
> Hello Michal,
> 
> I waited some days for a fix - but obviously no one else has this problem so
> far ...
> 
> This merge
> 
> "Merge branch 'kbuild' of
> git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild"
> 
> https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=84d69848c97faab0c25aa2667b273404d2e2a64a
> 
> creates a bunch of warnings on my system and the built kernel does not boot
> (it complains about a missing root fs).
> 
> In the build process some .ko files are built fine and some don't:
> 
> (..)
>   MODPOST 176 modules
>   AS      arch/x86/boot/compressed/efi_thunk_64.o
>   GZIP    arch/x86/boot/compressed/vmlinux.bin.gz
>   CC      arch/x86/boot/compressed/misc.o
> WARNING: "memset" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> WARNING: "__fentry__" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> WARNING: "memcpy" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> WARNING: "__sw_hweight32" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> WARNING: "_copy_to_user" [sound/usb/snd-usb-audio.ko] has no CRC!
> WARNING: "memset" [sound/usb/snd-usb-audio.ko] has no CRC!
> WARNING: "__put_user_1" [sound/usb/snd-usb-audio.ko] has no CRC!
> WARNING: "__put_user_4" [sound/usb/snd-usb-audio.ko] has no CRC!
> WARNING: "__fentry__" [sound/usb/snd-usb-audio.ko] has no CRC!
> WARNING: "memcpy" [sound/usb/snd-usb-audio.ko] has no CRC!
> WARNING: "__fentry__" [sound/soundcore.ko] has no CRC!
> (..)
> WARNING: "__fentry__" [arch/x86/crypto/crc32c-intel.ko] has no CRC!
> WARNING: "__fentry__" [arch/x86/crypto/crc32-pclmul.ko] has no CRC!
> WARNING: "__fentry__" [arch/x86/crypto/aesni-intel.ko] has no CRC!
> WARNING: "__fentry__" [arch/x86/crypto/aes-x86_64.ko] has no CRC!
>   CC      arch/x86/crypto/aes-x86_64.mod.o
>   CC      arch/x86/crypto/aesni-intel.mod.o
>   CC      arch/x86/crypto/crc32-pclmul.mod.o
>   CC      arch/x86/crypto/crc32c-intel.mod.o
> (..)
> 
> When reverting the entire pull with
> 
> git diff 84d69848c97faab0c25aa2667b273404d2e2a64a
> d4d24d2d0a7ea3b62efd7336bfc2344e29b36bc5 | patch -p1
> 
> everything is ok again.
> 
> My system is a Debian Stretch.
> gcc version 6.2.0 20161010 (Debian 6.2.0-6)
> 
> ..config is attached - in the case I have an unusual one from your
> perspective.
> 
> Regards,
> Oliver

[toc] | [next] | [standalone]


#1516519

FromVince Weaver <vincent.weaver@maine.edu>
Date2016-11-07 20:20 +0100
Message-ID<sAXCy-7rh-29@gated-at.bofh.it>
In reply to#1510500
On Thu, 27 Oct 2016, Peter Wu wrote:

> I can confirm Olivers issue, the current mainline kernel fails to boot
> on kernels with CONFIG_MODVERSIONS=y. Bisection points to:
> 
>     commit 784d5699eddc55878627da20d3fe0c8542e2f1a2
>     Author: Al Viro <viro@zeniv.linux.org.uk>
>     Date:   Mon Jan 11 11:04:34 2016 -0500
> > WARNING: "memset" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > WARNING: "__fentry__" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > WARNING: "memcpy" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > WARNING: "__sw_hweight32" [sound/usb/snd-usbmidi-lib.ko] has no CRC!

Has any progress been made with this problem?

I'm also encountering it on my debian-unstable box on any kernel more 
recent than 4.9-rc1 (up to and including 4.9-rc4).  I am glad someone 
managed to isolate it as I was unable to get a clean bisect.

Vince

[toc] | [prev] | [next] | [standalone]


#1516604

FromPeter Wu <peter@lekensteyn.nl>
Date2016-11-07 22:40 +0100
Message-ID<sAZO2-ic-31@gated-at.bofh.it>
In reply to#1516519
On Mon, Nov 07, 2016 at 02:10:12PM -0500, Vince Weaver wrote:
> On Thu, 27 Oct 2016, Peter Wu wrote:
> 
> > I can confirm Olivers issue, the current mainline kernel fails to boot
> > on kernels with CONFIG_MODVERSIONS=y. Bisection points to:
> > 
> >     commit 784d5699eddc55878627da20d3fe0c8542e2f1a2
> >     Author: Al Viro <viro@zeniv.linux.org.uk>
> >     Date:   Mon Jan 11 11:04:34 2016 -0500
> > > WARNING: "memset" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > > WARNING: "__fentry__" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > > WARNING: "memcpy" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > > WARNING: "__sw_hweight32" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> 
> Has any progress been made with this problem?
> 
> I'm also encountering it on my debian-unstable box on any kernel more 
> recent than 4.9-rc1 (up to and including 4.9-rc4).  I am glad someone 
> managed to isolate it as I was unable to get a clean bisect.
> 
> Vince

The original kbuild issue went in via
merge commit 84d69848c97faab0c25aa2667b273404d2e2a64a which notes:

 - EXPORT_SYMBOL for asm source by Al Viro.

   This does bring a regression, because genksyms no longer generates
   checksums for these symbols (CONFIG_MODVERSIONS). Nick Piggin is
   working on a patch to fix this.

   Plus, we are talking about functions like strcpy(), which rarely
   change prototypes.

Adding Nicholas in the cc, hopefully he can give a status update.

Kind regards,
Peter

[toc] | [prev] | [next] | [standalone]


#1516727

FromNicholas Piggin <npiggin@gmail.com>
Date2016-11-08 03:00 +0100
Message-ID<sB3RE-2NH-11@gated-at.bofh.it>
In reply to#1516604
On Mon, 7 Nov 2016 22:39:07 +0100
Peter Wu <peter@lekensteyn.nl> wrote:

> On Mon, Nov 07, 2016 at 02:10:12PM -0500, Vince Weaver wrote:
> > On Thu, 27 Oct 2016, Peter Wu wrote:
> >   
> > > I can confirm Olivers issue, the current mainline kernel fails to boot
> > > on kernels with CONFIG_MODVERSIONS=y. Bisection points to:
> > > 
> > >     commit 784d5699eddc55878627da20d3fe0c8542e2f1a2
> > >     Author: Al Viro <viro@zeniv.linux.org.uk>
> > >     Date:   Mon Jan 11 11:04:34 2016 -0500  
> > > > WARNING: "memset" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > > > WARNING: "__fentry__" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > > > WARNING: "memcpy" [sound/usb/snd-usbmidi-lib.ko] has no CRC!
> > > > WARNING: "__sw_hweight32" [sound/usb/snd-usbmidi-lib.ko] has no CRC!  
> > 
> > Has any progress been made with this problem?
> > 
> > I'm also encountering it on my debian-unstable box on any kernel more 
> > recent than 4.9-rc1 (up to and including 4.9-rc4).  I am glad someone 
> > managed to isolate it as I was unable to get a clean bisect.
> > 
> > Vince  
> 
> The original kbuild issue went in via
> merge commit 84d69848c97faab0c25aa2667b273404d2e2a64a which notes:
> 
>  - EXPORT_SYMBOL for asm source by Al Viro.
> 
>    This does bring a regression, because genksyms no longer generates
>    checksums for these symbols (CONFIG_MODVERSIONS). Nick Piggin is
>    working on a patch to fix this.
> 
>    Plus, we are talking about functions like strcpy(), which rarely
>    change prototypes.
> 
> Adding Nicholas in the cc, hopefully he can give a status update.

I think Michal has everything needed now for the kbuild bits. The arch
specific patches can go via arch trees quite easily (there is no hard
dependency either way). This is the kbuild bit:

https://git.kernel.org/cgit/linux/kernel/git/mmarek/kbuild.git/commit/?h=rc-fixes&id=4efca4ed05cbdfd13ec3e8cb623fb77d6e4ab187

And it also needs this incremental bit not in Michal's tree yet:

---
 scripts/Makefile.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/Makefile.build b/scripts/Makefile.build
index 3e223c2..05c6bb4 100644
--- a/scripts/Makefile.build
+++ b/scripts/Makefile.build
@@ -332,7 +332,7 @@ cmd_gensymtypes_S =                                                         \
     (echo "\#include <linux/kernel.h>" ;                                    \
      echo "\#include <asm/asm-prototypes.h>" ;                              \
     $(CPP) $(a_flags) $< |                                                  \
-     grep ^___EXPORT_SYMBOL |                                               \
+     grep ___EXPORT_SYMBOL |                                                \
      sed 's/___EXPORT_SYMBOL \([a-zA-Z0-9_]*\),.*/EXPORT_SYMBOL(\1);/' ) |  \
     $(CPP) -D__GENKSYMS__ $(c_flags) -xc - |                                \
     $(GENKSYMS) $(if $(1), -T $(2))                                         \
-- 
2.9.3

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web