From: Ingo Molnar <mingo@kernel.org>
To: Shuah Khan <skhan@linuxfoundation.org>
Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de,
dave.hansen@linux.intel.com, x86@kernel.org,
linux-kernel@vger.kernel.org, hpa@zytor.com
Subject: Re: [PATCH] x86/Kconfig: Fix dependency for X86_DEBUG_FPU
Date: Wed, 9 Apr 2025 23:34:06 +0200 [thread overview]
Message-ID: <Z_bnzs3IPyhVIYaT@gmail.com> (raw)
In-Reply-To: <f9642a9f-27d4-4f84-818c-390194b898bf@linuxfoundation.org>
* Shuah Khan <skhan@linuxfoundation.org> wrote:
> On 4/8/25 00:54, Ingo Molnar wrote:
> >
> > * Shuah Khan <skhan@linuxfoundation.org> wrote:
> >
> > > Compile fails when X86_DEBUG_FPU is enabled and X86_REQUIRED_FEATURE_FPU is
> > > disabled. Add explicit dependency on X86_REQUIRED_FEATURE_FPU to fix it.
> > >
> > > ../arch/x86/kernel/fpu/regset.c:411:(.text+0x4cf2f): undefined reference to `fpregs_soft_get'
> > > ld: vmlinux.o: in function `fpregs_set':
> > > ../arch/x86/kernel/fpu/regset.c:445:(.text+0x4d0da): undefined reference to `fpregs_soft_set'
> > > ld: vmlinux.o: in function `copy_fpstate_to_sigframe':
> > > ../arch/x86/kernel/fpu/signal.c:197:(.text+0x4da98): undefined reference to `fpregs_soft_get'
> > >
> >
> > So I cannot reproduce this build failure on either v6.14 or v6.15-rc1:
> >
> > starship:~/tip> git describe
> > v6.15-rc1
> >
> > starship:~/tip> grep -E 'X86_32=|M486SX=|X86_REQUIRED_FEATURE|X86_DEBUG_FPU' .config
> > CONFIG_X86_32=y
> > CONFIG_M486SX=y
> > CONFIG_X86_REQUIRED_FEATURE_ALWAYS=y
> > CONFIG_X86_DEBUG_FPU=y
> >
> > starship:~/tip> make -j128 ARCH=i386 bzImage modules
> >
> > ...
> > Kernel: arch/x86/boot/bzImage is ready (#5)
> >
> > > Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
> > > ---
> > > 6.14 compile worked without X86_REQUIRED_FEATURE_FPU enabled. Might be a
> > > new dependency. Enabling X86_REQUIRED_FEATURE_FPU fixed it for me on my
> > > test system.
> >
> > So vanilla v6.14 does not have X86_REQUIRED_FEATURE Kconfig flags, at
> > all:
> >
> > starship:~/tip> grep FPU .config
> > CONFIG_ARCH_HAS_KERNEL_FPU_SUPPORT=y
> > CONFIG_X86_DEBUG_FPU=y
> > # CONFIG_TEST_FPU is not set
> >
> > Because X86_REQUIRED_FEATURE_FPU is a new v6.15-rc1 feature, introduced
> > via:
> >
> > 3d37d9396eb3 ("x86/cpufeatures: Add {REQUIRED,DISABLED} feature configs")
> >
> > I have no doubt you are seeing this build failure - but I think there
> > might be some other .config detail required to reproduce it, not
> > mentioned in your changelog. Could you please send the config you used?
> >
>
> Config attached.
>
> grep _FPU /boot/config-6.14.0+
> CONFIG_ARCH_HAS_KERNEL_FPU_SUPPORT=y
> CONFIG_X86_DEBUG_FPU=y
> # CONFIG_TEST_FPU is not set
>
> I noticed you are building ARCH=i386 - can you reproduce this
> with x86_64? That is what I am building.
>
> thanks,
> -- Shuah
> #
> # Automatically generated file; DO NOT EDIT.
> # Linux/x86 6.14.0 Kernel Configuration
> #
> CONFIG_CC_VERSION_TEXT="gcc (Debian 14.2.0-17) 14.2.0"
Is this a vanilla v6.14 kernel? Because on upstream v6.14 'make
oldconfig' gives me:
Generate BTF type information (DEBUG_INFO_BTF) [N/y/?] (NEW)
Maybe different build environment?
... and after answering that with 'N' the build succeeds:
LD arch/x86/boot/setup.elf
OBJCOPY arch/x86/boot/setup.bin
BUILD arch/x86/boot/bzImage
Kernel: arch/x86/boot/bzImage is ready (#3)
More importantly, X86_REQUIRED_FEATURE_FPU *does not exist* in the
vanilla v6.14 kernel, it's a new v6.15 feature. So this part of your
changelog totally doesn't apply to a v6.14 kernel:
> > > Compile fails when X86_DEBUG_FPU is enabled and X86_REQUIRED_FEATURE_FPU is
> > > disabled. Add explicit dependency on X86_REQUIRED_FEATURE_FPU to fix it.
Thanks,
Ingo
next prev parent reply other threads:[~2025-04-09 21:34 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-07 23:10 [PATCH] x86/Kconfig: Fix dependency for X86_DEBUG_FPU Shuah Khan
2025-04-08 6:54 ` Ingo Molnar
2025-04-08 16:51 ` Shuah Khan
2025-04-09 21:34 ` Ingo Molnar [this message]
2025-04-09 21:41 ` Shuah Khan
2025-04-10 6:31 ` Ingo Molnar
2025-04-10 21:18 ` Shuah Khan
2025-04-13 19:04 ` Ingo Molnar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Z_bnzs3IPyhVIYaT@gmail.com \
--to=mingo@kernel.org \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=skhan@linuxfoundation.org \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox