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
>

Acked-by: H. Peter Anvin (Rosaic) <[email protected]>

Reply via email to