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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.