On Tuesday 21 August 2012 14:27:31 Catalin Marinas wrote: > On Tue, Aug 21, 2012 at 07:17:19PM +0100, Geert Uytterhoeven wrote: > > On Tue, Aug 21, 2012 at 6:06 PM, Catalin Marinas wrote: > > > But I can see on x86 that it always reports x86_64 even if the task is > > > x86_32. > > > > Really? > > > > $ uname -m > > x86_64 > > $ linux32 uname -m > > i686 > > $ > > Well, you set the personality explicitly with linux32. What I tested was > with an x86_32 uname called directly (without linux32) and even though > the ELF was a 32-bit one, it was reporting x86_64. In this AArch64 > patch, a compat task was automatically setting the linux32 personality > (which x86 does not do). i don't think any arch does this. $ uname -m ppc64 $ linux32 uname -m ppc $ uname -m sparc64 $ linux32 uname -m sparc $ uname -m x86_64 $ linux32 uname -m i686 $ uname -m s390x $ linux32 uname -m s390 > Arnd's point is that the ELF file should not affect the personality and > hence the uname value. This should only be done by an explicit call to > sys_personality(). correct. if someone really wants to launch their whole userland with the adjusted personality, they could always boot the kernel with: init=/usr/bin/linux32 /sbin/init but the kernel shouldn't be doing this automatically. -mike