[tip: x86/cpu] x86/fpu: Remove the 'no387' boot option

tip-bot2 for Ingo Molnar posted 1 patch 3 weeks, 1 day ago
Documentation/admin-guide/kernel-parameters.txt |  4 +---
arch/x86/Kconfig                                | 20 +++++++---------
arch/x86/kernel/cpu/common.c                    |  7 +------
3 files changed, 9 insertions(+), 22 deletions(-)
[tip: x86/cpu] x86/fpu: Remove the 'no387' boot option
Posted by tip-bot2 for Ingo Molnar 3 weeks, 1 day ago
The following commit has been merged into the x86/cpu branch of tip:

Commit-ID:     d8b55ce0c9958243c0b69211b12185287750d81a
Gitweb:        https://git.kernel.org/tip/d8b55ce0c9958243c0b69211b12185287750d81a
Author:        Ingo Molnar <mingo@kernel.org>
AuthorDate:    Fri, 25 Apr 2025 10:42:06 +02:00
Committer:     Ingo Molnar <mingo@kernel.org>
CommitterDate: Fri, 08 May 2026 07:34:03 +02:00

x86/fpu: Remove the 'no387' boot option

Without math emulation there's no point to this option.

Signed-off-by: Ingo Molnar <mingo@kernel.org>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Ahmed S. Darwish <darwi@linutronix.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: https://lore.kernel.org/r/20250425084216.3913608-10-mingo@kernel.org
---
 Documentation/admin-guide/kernel-parameters.txt |  4 +---
 arch/x86/Kconfig                                | 20 +++++++---------
 arch/x86/kernel/cpu/common.c                    |  7 +------
 3 files changed, 9 insertions(+), 22 deletions(-)

diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 4d0f545..d48d175 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -4437,10 +4437,6 @@ Kernel parameters
 			These settings can be accessed at runtime via
 			the nmi_watchdog and hardlockup_panic sysctls.
 
-	no387		[BUGS=X86-32] Tells the kernel to use the 387 maths
-			emulation library even if a 387 maths coprocessor
-			is present.
-
 	no4lvl		[RISCV,EARLY] Disable 4-level and 5-level paging modes.
 			Forces kernel to use 3-level paging instead.
 
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index f67af15..34e92da 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -2742,18 +2742,16 @@ menuconfig APM
 	  1) make sure that you have enough swap space and that it is
 	  enabled.
 	  2) pass the "idle=poll" option to the kernel
-	  3) switch on floating point emulation in the kernel and pass
-	  the "no387" option to the kernel
-	  4) pass the "floppy=nodma" option to the kernel
-	  5) pass the "mem=4M" option to the kernel (thereby disabling
+	  3) pass the "floppy=nodma" option to the kernel
+	  4) pass the "mem=4M" option to the kernel (thereby disabling
 	  all but the first 4 MB of RAM)
-	  6) make sure that the CPU is not over clocked.
-	  7) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/>
-	  8) disable the cache from your BIOS settings
-	  9) install a fan for the video card or exchange video RAM
-	  10) install a better fan for the CPU
-	  11) exchange RAM chips
-	  12) exchange the motherboard.
+	  5) make sure that the CPU is not over clocked.
+	  6) read the sig11 FAQ at <http://www.bitwizard.nl/sig11/>
+	  7) disable the cache from your BIOS settings
+	  8) install a fan for the video card or exchange video RAM
+	  9) install a better fan for the CPU
+	  10) exchange RAM chips
+	  11) exchange the motherboard.
 
 	  To compile this driver as a module, choose M here: the
 	  module will be called apm.
diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index a4268c4..897145f 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -1737,13 +1737,6 @@ static void __init cpu_parse_early_param(void)
 	int arglen;
 
 #ifdef CONFIG_X86_32
-	if (cmdline_find_option_bool(boot_command_line, "no387"))
-#ifdef CONFIG_MATH_EMULATION
-		setup_clear_cpu_cap(X86_FEATURE_FPU);
-#else
-		pr_err("Option 'no387' required CONFIG_MATH_EMULATION enabled.\n");
-#endif
-
 	if (cmdline_find_option_bool(boot_command_line, "nofxsr"))
 		setup_clear_cpu_cap(X86_FEATURE_FXSR);
 #endif