Re: [PATCH v2 16/31] arm64: ELF definitions
From: Mike Frysinger
Date: Tue Aug 21 2012 - 14:53:12 EST
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
Attachment:
signature.asc
Description: This is a digitally signed message part.