Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Jul 2010 15:48:57 -0500
From:      Nathan Whitehorn <nwhitehorn@freebsd.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        amd64@freebsd.org, freebsd-arch@freebsd.org
Subject:   Re: uname -m/-p for compat32 binaries
Message-ID:  <4C460BB9.1060009@freebsd.org>
In-Reply-To: <201007200907.24715.jhb@freebsd.org>
References:  <20100719213054.GB2381@deviant.kiev.zoral.com.ua> <201007200907.24715.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 07/20/10 08:07, John Baldwin wrote:
> On Monday, July 19, 2010 5:30:54 pm Kostik Belousov wrote:
>    
>> Hi,
>> I intend to commit the following change, that makes sysctls
>> hw.machine_arch and hw.machine to return "i386" for 32 bit
>> binaries run on amd64. In particular, 32 bit uname -m and uname -p
>> print "i386", that is good for i386 jails on amd64 kernels.
>>
>> I find the change very useful for me, but I wonder why such trivial
>> modification is not yet done. Can anybody note a possible fallout from
>> it ?
>>      
> Presumably ia64 and powerpc64 would need a similar change as well?  It looks
> fine to me.  I suspect Y! used the UNAME_* approach as it didn't add yet-
> another local diff to maintain in the kernel, and the uname fixes at Y! might
> have predated SCTL_MASK32.
>    
Maybe it makes sense to define a MACHINE_ARCH32 in machine/param.h, as 
is done for ELF_ARCH32 in machine/elf.h? This would keep the MI code in 
the kernel MI, and ever-so-slightly simplify implementation for ia64, 
mips, and powerpc64. Thanks for doing this!
-Nathan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4C460BB9.1060009>