Re: [PATCH v2] x86: Start removing X86_X32_ABI
From: H. Peter Anvin
Date: Fri Jul 10 2026 - 17:01:22 EST
On July 8, 2026 1:26:28 PM PDT, David Laight <david.laight.linux@xxxxxxxxx> wrote:
>On Wed, 8 Jul 2026 17:27:46 +0100 (BST)
>"Maciej W. Rozycki" <macro@xxxxxxxxxxx> wrote:
>
>> On Wed, 8 Jul 2026, Arnd Bergmann wrote:
>>
>> > As I understand, it's a policy in Debian for debian-installer and
>> > the kernel packages to only provide kernels for the native
>> > architecture, i.e. 64-bit x86 kernels are only packaged for
>> > amd64 and not x32 or i686, and 64-bit Arm kernels are only
>> > packaged for arm64 but not armhf or formerly armel.
>>
>> Weird, x32 vs x64 for the Intel ISA or say n32 vs n64 for the MIPS ISA
>> are psABI variants rather than architectures. All are native, just using
>> different register usage conventions.
>
>IIRC n32 just uses the 32bit system calls.
>x32 can't do that due to the differing alignment of u64.
>So the x86-64 kernel has to have three sets of system call wrappers (etc).
>
> David
>
>>
>> And the kernel is a bare metal application, it has nothing to do with the
>> userland as far as the user psABI is concerned. It could use yet another
>> psABI and I suspect this is the case at least for some of the Linux ports
>> (`-mregparm=' GCC option comes immediately to mind). Insisting that the
>> same compilation options are used for the kernel as with all the userland
>> packages in a distribution seems artificial and unreasonable to me.
>>
>> BTW, at least with n32 the MIPS architecture permits CPU implementations
>> that only support that psABI and not n64. Never implemented, I believe,
>> but just proves its nativity.
>>
>> FWIW,
>>
>> Maciej
>>
>
A very small number, though. The vast majority are the same as either x64 or i386.