Subject: Re: linux-next: build failure after merge of the tip tree

From: Peter Zijlstra <[email-masked]>
Date: Mon, 24 Nov 2025 15:49:23 +0100

On Mon, Nov 24, 2025 at 03:47:14PM +0100, Peter Zijlstra wrote:
> On Mon, Nov 24, 2025 at 06:00:52AM -0800, Boqun Feng wrote:
> > On Mon, Nov 24, 2025 at 01:32:49PM +0100, Peter Zijlstra wrote:
> > > On Mon, Nov 24, 2025 at 11:16:44PM +1100, Stephen Rothwell wrote:
> > > > Hi all,
> > > > 
> > > > After merging the tip tree, today's linux-next build (x86_64 allmodconfig)
> > > > failed like this:
> > > > 
> > > > ERROR: modpost: "NULL" [drivers/gpu/nova-core/nova_core.ko] undefined!
> > > > 
> > > 
> > > Rust :/
> > > 
> > > So I have:
> > > 
> > > $ make O=tmp-build LLVM=-22 allmodconfig
> > > $ make O=tmp-build LLVM=-22 rustavailable
> > > Rust is available!
> > > $ grep -e CONFIG_RUST= -e CONFIG_NOVA= tmp-build/.config
> > > $
> > > 
> > > Help ?!?
> > > 
> > 
> > [CC nova]
> > 
> > On my system it seems that RANDSTRUCT=y prevents the enabling of RUST,
> > but I'm sure Danilo and Alexandre have better ideas about how to enable
> > nova-core.
> 
> Ah, indeed, RANDSTRUCT seems to be messing things up. I tried disabling
> that, but then I need to manually enable random crap to get Nova happy
> and menuconfig isn't very nice.
> 
> I really don't think rustavailable is doing a good job here. Strictly
> speaking yes, its available, but figuring out why things don't work is a
> giant pain in the arse.
> 
> Now, lets see if frobbing Kconfig to disqualify RANDSTRUCT will let
> allmodconfig work better.

This... ok now lets see wtf the actual problem is.

diff --git a/security/Kconfig.hardening b/security/Kconfig.hardening
index 86f8768c63d4..4a5890796ac2 100644
--- a/security/Kconfig.hardening
+++ b/security/Kconfig.hardening
@@ -282,6 +282,7 @@ config CC_HAS_RANDSTRUCT
 	# Randstruct was first added in Clang 15, but it isn't safe to use until
 	# Clang 16 due to https://github.com/llvm/llvm-project/issues/60349
 	depends on !CC_IS_CLANG || CLANG_VERSION >= 160000
+	depends on BROKEN
 
 choice
 	prompt "Randomize layout of sensitive kernel structures"