All of lore.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@zytor.com>
To: David Miller <davem@davemloft.net>
Cc: arnd@arndb.de, hch@lst.de, akpm@linux-foundation.org,
	linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org,
	tony.luck@intel.com, ralf@linux-mips.org, kyle@mcmartin.ca,
	benh@kernel.crashing.org, schwidefsky@de.ibm.com,
	heiko.carstens@de.ibm.com, tglx@linutronix.de, mingo@redhat.com,
	viro@zeniv.linux.org.uk
Subject: Re: [PATCH 4/6] improve sys_personality for compat architectures
Date: Wed, 03 Feb 2010 12:04:10 -0800	[thread overview]
Message-ID: <4B69D6BA.4030704@zytor.com> (raw)
In-Reply-To: <20100203.091309.52886984.davem@davemloft.net>

On 02/03/2010 09:13 AM, David Miller wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> Date: Wed, 3 Feb 2010 18:06:27 +0100
> 
>>> But if the consensus is that we should fix this properly I can
>>> replace the patch with one introducing a compat_sys_personality
>>> which only gets used for compat tasks.
>>
>> Right now, sparc64 and powerpc64 use sys32_personality for both native
>> and compat tasks, x86 never uses it and all others use it only for
>> compat tasks. That seems more sensible if we keep this function at
>> all.
> 
> If it only gets used for compat tasks, you can only switch in
> one direction.  I think it needs to be handled for both compat
> and non-compat tasks, in order to allow for that.

That seems odd... with the wrapper you can ever only switch in one
direction, and if you use it for non-compat tasks you wouldn't be ever
to switch back, period.

> That's why powerpc64 and sparc64 do things the way they do,
> I am pretty sure.

As far as I can tell, the ppc64 and sparc64 implementations would seem
to be trapdoors from which no return is possible.  That's a pretty
defensible position in some ways -- it mimics the 32-bit machine even
down to the personality() syscall -- but it definitely has disadvantages.

The x86 method of simply not bothering doesn't seem to have caused
problems -- our compat (and noncompat) tasks happily return PER_LINUX32
if that is the mode and we don't seem to have had complaints with it.
If userspace ever had an issue with it -- and they might have, at one
point in history libc used to call personality() during startup, which
it doesn't seem to anymore -- they presumably have worked through it.

As such, I'm more than a little reluctant to change the current behavior.

	-hpa

  reply	other threads:[~2010-02-03 20:18 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-01 18:56 [PATCH 4/6] improve sys_personality for compat architectures Christoph Hellwig
2010-02-02 14:36 ` Arnd Bergmann
2010-02-02 16:31   ` Christoph Hellwig
2010-02-03 17:06     ` Arnd Bergmann
2010-02-03 17:13       ` David Miller
2010-02-03 20:04         ` H. Peter Anvin [this message]
2010-02-04  7:38           ` Arnd Bergmann
2010-02-04 16:00             ` Christoph Hellwig
2010-03-05 19:49               ` Andrew Morton
2010-03-09 12:58                 ` Christoph Hellwig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4B69D6BA.4030704@zytor.com \
    --to=hpa@zytor.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=benh@kernel.crashing.org \
    --cc=davem@davemloft.net \
    --cc=hch@lst.de \
    --cc=heiko.carstens@de.ibm.com \
    --cc=kyle@mcmartin.ca \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=ralf@linux-mips.org \
    --cc=schwidefsky@de.ibm.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=viro@zeniv.linux.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.