All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] x86: Start removing X86_X32_ABI
@ 2026-05-23  9:37 Sebastian Andrzej Siewior
  2026-05-23 21:43 ` H. Peter Anvin
                   ` (6 more replies)
  0 siblings, 7 replies; 24+ messages in thread
From: Sebastian Andrzej Siewior @ 2026-05-23  9:37 UTC (permalink / raw)
  To: linux-kernel, x86
  Cc: H. Peter Anvin, Borislav Petkov, Dave Hansen, Ingo Molnar,
	Jonathan Corbet, Thomas Gleixner

The x32 ABI was introduced in v3.4 to leverage the additional registers
which were available on x86_64 but not on i386 while keeping the smaller
32bit pointers.

This did not take off. The memory usage usually knows no limit and the
better performance did not reach a point where certain workloads widely
move to x32 and use it exclusively. In the meantime Debian introduced a
patch to disable x32 by default (so it has to be enabled at boot time on
the command line) because they are afraid of the increased attack
surface. Fedora as far as I tell has X32 disabled (looking at 7.0-rc5
rpm in rawhide).

The last syscall for x86_64 is currently at 471. The first x32 starts at
512 which leaves 40 new syscalls in between. Without the x32 ABI, those
syscalls could be used since x32 wouldn't be an option and therefore
reserved.

Since there is practically no real use for x32, start removing it by
removing the symbol first, not allowing to enable it. Should nothing
happening within the next half year, lets remove code bits around August
after the summer break.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
---
 arch/x86/Kconfig | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index f3f7cb01d69d0..2b246a6125768 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -3143,20 +3143,6 @@ config IA32_EMULATION_DEFAULT_DISABLED
 	  processes and access to 32-bit syscalls. If unsure, leave it to its
 	  default value.
 
-config X86_X32_ABI
-	bool "x32 ABI for 64-bit mode"
-	depends on X86_64
-	# llvm-objcopy does not convert x86_64 .note.gnu.property or
-	# compressed debug sections to x86_x32 properly:
-	# https://github.com/ClangBuiltLinux/linux/issues/514
-	# https://github.com/ClangBuiltLinux/linux/issues/1141
-	depends on $(success,$(OBJCOPY) --version | head -n1 | grep -qv llvm)
-	help
-	  Include code to run binaries for the x32 native 32-bit ABI
-	  for 64-bit processors.  An x32 process gets access to the
-	  full 64-bit register file and wide data path while leaving
-	  pointers at 32 bits for smaller memory footprint.
-
 config COMPAT_32
 	def_bool y
 	depends on IA32_EMULATION || X86_32
-- 
2.53.0


^ permalink raw reply related	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2026-06-05  3:36 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-23  9:37 [PATCH] x86: Start removing X86_X32_ABI Sebastian Andrzej Siewior
2026-05-23 21:43 ` H. Peter Anvin
2026-05-26 10:40   ` Sebastian Andrzej Siewior
2026-05-26 15:53     ` H. Peter Anvin
2026-05-26 15:54     ` H. Peter Anvin
2026-05-26 20:43       ` Sebastian Andrzej Siewior
2026-05-31 21:46         ` Arnd Bergmann
2026-06-01 21:44           ` Sebastian Andrzej Siewior
2026-06-01 22:45             ` Arnd Bergmann
2026-05-27 12:02       ` David Laight
2026-06-01 21:29         ` H. Peter Anvin
2026-06-04 20:27   ` Thomas Gleixner
2026-05-27 13:10 ` Sam James
2026-05-27 13:41 ` Neal Gompa
2026-05-27 15:57 ` John Paul Adrian Glaubitz
2026-06-01 21:12   ` Sebastian Andrzej Siewior
2026-06-01 21:14     ` H. Peter Anvin
2026-05-28  7:05 ` Tomas Glozar
2026-06-01 21:26   ` Sebastian Andrzej Siewior
2026-05-31 22:05 ` Arnd Bergmann
2026-06-02 16:02   ` Maciej W. Rozycki
2026-06-02 16:36     ` Arnd Bergmann
2026-06-05  3:35       ` H. Peter Anvin
2026-06-02  9:48 ` Richard Purdie

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.