Re: [PATCH] x86/kbuild: enable modversions for symbols exported from asm

From: Alan Modra
Date: Sun Dec 04 2016 - 02:44:59 EST


On Fri, Dec 02, 2016 at 11:55:58AM +0100, Arnd Bergmann wrote:
> I have managed to bisect the link failure to a specific binutils
> commit by Alan Modra now:
>
> d983c8c ("Strip undefined symbols from .symtab")
>
> went into binutils-2_26 and was reverted in
>
> a82e3ef ("Revert "Strip undefined symbols from .symtab"")
>
> after the release branch for 2.26 was started, so that version
> ended up being fine. However, the 2.27 version never saw the revert
> and causes loadable kernel modules to become unusable when they refer
> to a weak symbol in vmlinux. This works with 2.26 and lower:

See https://sourceware.org/ml/binutils/2016-01/msg00118.html thread
for discussion on why the patch was reverted for 2.26. At the time I
believed that only the ppc64 kernel was affected, by a weak undefined
"__crc_TOC." disappearing. Am I correct in thinking that remained
true up until Linus' merge commit 84d69848c9 2016-10-14?

As far as reverting the binutils commit goes, I'm quite willing to do
that if necessary. You can see how important I think the fix was by
viewing https://sourceware.org/bugzilla/show_bug.cgi?id=4317 and
noticing that the bug was reported in 2007 and didn't see any action
for 8 years..

--
Alan Modra
Australia Development Lab, IBM