On Thu, Oct 15 2026 at 20:47, Sebastian Andrzej Siewior wrote:
> 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.
> If you have a legitimate use case for x32, this is your last chance to
> speak up. Otherwise it will be removed.
>
> Acked-by: Arnd Bergmann <[email protected]>
> Acked-by: H. Peter Anvin (Rosaic) <[email protected]>
> Signed-off-by: Sebastian Andrzej Siewior <[email protected]>Reviewed-by: Thomas Gleixner <[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

