Re: Kconfig: ARCH=x86 causes wrong utsname.machine

H. Peter Anvin
2007-11-16T15:20:39Z

Andreas Herrmann wrote:
> The new ARCH=x86 kernel build causes weired machine strings on 32-bit.
> For a cross-compiled kernel I have
>
> $ uname -m
> x66_64
>
> For a kernel natively built on a 32 bit machine I have
>
> $ uname -m
> x66
>
> Looking at the sources, I think that utsname->machine was initially
> set as "x86_64" and "x86", respectively.
> But in arch/x86/kernel/cpu/bugs.c in check_bugs() the second character
> is set to '6' on my K7.
>
> I think the right solution for that problem is to use "x86_64" as the
> machine name for 64-bit and to keep the old "i[3456]86" strings for
> 32-bit kernels.

Absolutely. This would be userspace-visible ABI breakage.

-hpa