On October 8, 2026 11:07:43 AM GMT+02:00, Sebastian Andrzej Siewior <[email protected]> wrote: >From: Sebastian Andrzej Siewior <[email protected]> > >From: Sebastian Andrzej Siewior <[email protected]> > >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 syscall range >512 used by x32 can not be reused because on earlier >kernels (before v5.4 with x32 enabled, see commit 6365b842aae4 >("x86/syscalls: Split the x32 syscalls into their own table") it is not >obvious if the syscall is for x86-64 and not implemented or meant for >x32. >What can be removed are the special compat cases due to different >alignment. > >Since there is practically no real use for x32, start removing it by >marking the symbol as BROKEN so it is not possible to enable by default. >It will remain around in the last LTS kernel of this year and then it >will be removed. > >Acked-by: Arnd Bergmann <[email protected]> >Signed-off-by: Sebastian Andrzej Siewior <[email protected]> >--- > arch/x86/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig >index 15fd9ec5ecacb..21a6863e14e7a 100644 >--- a/arch/x86/Kconfig >+++ b/arch/x86/Kconfig >@@ -3104,7 +3104,7 @@ config IA32_EMULATION_DEFAULT_DISABLED > > config X86_X32_ABI > bool "x32 ABI for 64-bit mode" >- depends on X86_64 >+ depends on X86_64 && BROKEN > # 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 >
I want to make one change to this. The commit message states this as a fait accompli, but what it should say is: ** If you have a legitimate use case for x32, this is your last chance to speak up. Otherwise it will... **

