On Sat, Nov 17, 2007 at 08:57:15AM +0100, Sam Ravnborg wrote: > > > > > >Any good suggestions here??? > > >UTS_MACHINE is set in top-level Makefile and if we specify > > >make ARCH=x86 > > >we do not know if i386 or x86_&4 is correct until the configuration > > >has been read. > > > > > >Should we report a "make ARCH=x86" as uname -m == x86?? > > > > > > > That would break 5 years of a stable ABI. I don't think that is even > > remotely feasible. > > I will try to cook up a patch that sets CONFIG_UTS_MACHINE > and then we will use that value unless it is undefined in which > case we fall back to UTS_MACHINE (as today).
IMHO we shouldn't add another config option. Just correctly set UTS_MACHINE in arch/x86/Makefile will do it. I wasn't aware where the machine name came from. Now that I know that (and shamelessly copying ideas from s390;-) it is easy to fix. See attached patch. Testing a crosscompiled 32-bit-kernel I now get # uname -m i686 on my K7. Other tests will follow. But patch looks sane and should go mainline asap, I think. Regards, Andreas -- x86: fix UTS_MACHINE to be "i386" for 32-bit build and "x86_64" for 64-bit build. Signed-off-by: Andreas Herrmann <[EMAIL PROTECTED]> --- arch/x86/Makefile | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/arch/x86/Makefile b/arch/x86/Makefile index 116b03a..7aa1dc6 100644 --- a/arch/x86/Makefile +++ b/arch/x86/Makefile @@ -11,10 +11,9 @@ endif $(srctree)/arch/x86/Makefile%: ; ifeq ($(CONFIG_X86_32),y) + UTS_MACHINE := i386 include $(srctree)/arch/x86/Makefile_32 else + UTS_MACHINE := x86_64 include $(srctree)/arch/x86/Makefile_64 endif - - - -- 1.5.3.4 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/