Re: [PATCH] ppc64: Fix PER_LINUX32 behaviour

From: Andi Kleen
Date: Sat Jun 11 2005 - 06:26:40 EST


"David S. Miller" <davem@xxxxxxxxxxxxx> writes:

> From: Paul Mackerras <paulus@xxxxxxxxx>
> Date: Thu, 9 Jun 2005 09:12:16 +1000
>
>> There is still a point of difference between ppc64 and x86_64: on
>> ppc64 (and on sparc64), if the personality is PER_LINUX32, the
>> personality(0xffffffffUL) system call returns PER_LINUX, and attempts
>> to set the personality to PER_LINUX don't change the personality
>> (i.e. it stays set to PER_LINUX32), for both 32-bit and 64-bit
>> processes. On x86_64 this is true for 32-bit processes but not for
>> 64-bit processes AFAICT. Does anyone know why we do this at all, and
>> whether doing it for 64-bit processes makes sense?
5A>
> We do this because, at least when this code was written,
> glibc would do a personality(PER_LINUX) call (either via
> the dynamic linker or via some other libc startup code)
> and this would undo the PER_LINUX32 setting.
>
> Therefore, it makes sense to do this for all cases, not
> just for 32-bit processes. The x86_64 code ought to be
> fixed, I think.

I have never seen a report of such a case (glibc undoing linux32).
Do you have details?

But I agree 64bit should be consistent to 32bit. Will fix.

-Andi

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/