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]
Message-ID: <942ca543-de49-abda-7e3b-a8a31c0c2c88@redhat.com>
Date:   Wed, 30 Nov 2016 16:07:00 -0500
From:   Jarod Wilson <jarod@...hat.com>
To:     Paul Bolle <pebolle@...cali.nl>
Cc:     Tony Luck <tony.luck@...el.com>,
        Linus Torvalds <torvalds@...ux-foundation.org>,
        Prarit Bhargava <prarit@...hat.com>,
        linux-kernel@...r.kernel.org
Subject: Re: Odd build breakage in 4.9-rc7

On 2016-11-30 3:52 PM, Paul Bolle wrote:
> On Wed, 2016-11-30 at 12:24 -0500, Jarod Wilson wrote:
>> Up second, once we're past the above, building modules goes splat:
>>
>> ----8<----
>> $ make -s ARCH=x86_64 V=1 -j8 modules
>> ...
>> ERROR: "module_put" [virt/lib/irqbypass.ko] undefined!
>> ERROR: "mutex_unlock" [virt/lib/irqbypass.ko] undefined!
>> ERROR: "mutex_lock" [virt/lib/irqbypass.ko] undefined!
>> ...
>> ----8<----
>>
>> There are similar ERROR lines to the tune of 145k lines of output,
>> basically for every single module and symbol in the build. This breakage
>> was bisected to commit cd3caefb4663e3811d37cc2afad3cce642d60061, which
>> looks fairly innocuous, but when reverted, builds work fine again.
>
> I ran into a modules build printing over 100K ERROR lines a month ago:
>     https://lkml.kernel.org/r/<1478165881-9263-1-git-send-email-pebolle@...cali.nl>
>
> That had to do with setting TRIM_UNUSED_KSYMS and so unsetting UNUSED_SYMBOLS,
> as far as I could tell. Did you perhaps also have UNUSED_SYMBOLS unset when
> your modules build when splat?

I did indeed have CONFIG_TRIM_UNUSED_KSYMS=y and CONFIG_UNUSED_SYMBOLS 
unset.

> And did your bzImage build by any chance print this (to stderr):
>     sed: can't read .tmp_versions/*.mod: No such file or directory

Yep, I do see this now that I look back at the output from the bzImage 
stage.

> If so I might have run into your second issue a month ago already, which makes
> your bisect to commit cd3caefb4663 ("Fix subtle CONFIG_MODVERSIONS problems")
> suspect. Or did that bisect not cover the second issue?

Hm. No, that bisect was indeed for this issue. Clean build each time, 
freshly unpacked 4.8 + rc6 patch applied + rc6-to-7 bisect patch.

>> Multi-threaded make vs. single-threaded doesn't matter, setting
>> CONFIG_BROKEN=y or '# CONFIG_MODVERSIONS is not set' don't make a
>> difference, and interestingly, if instead of split 'make bzImage' and
>> 'make modules', I just do a single 'make', then things DO build
>> successfully, so I'm a wee bit baffled as to what's actually going on
>> here.
>
> Likewise (ie, both the modules splat going away if doing a single make and
> being baffled, but more that a wee bit).

Seems like it could be a case of "this patch just happens to tickle the 
issue in just the right way so as to trigger" if you saw this already a 
month prior. Linus' commit message there says things were already broken 
when that went in, I don't know the details of how and haven't yet tried 
to uncover them.

-- 
Jarod Wilson
jarod@...hat.com

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ