public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jamie Lokier <jamie@shareable.org>
To: Janak Desai <janak@us.ibm.com>
Cc: chrisw@osdl.org, viro@ZenIV.linux.org.uk,
	nickpiggin@yahoo.com.au, linux-kernel@vger.kernel.org,
	linux-fsdevel@vger.kernel.org, akpm@osdl.org
Subject: Re: [PATCH] New System call unshare (try 2)
Date: Wed, 12 Oct 2005 18:19:14 +0100	[thread overview]
Message-ID: <20051012171914.GA8622@mail.shareable.org> (raw)
In-Reply-To: <Pine.WNT.4.63.0510121201540.1316@IBM-AIP3070F3AM>

Janak Desai wrote:
> 	Don't allow namespace unsharing, if sharing fs (CLONE_FS)

Makes sense.  clone() has the same test at the start.  (I think
namespace should be a property of fs, not task, anyway.  Or completely
eliminated because it's implied by the task's root dentry+vfsmnt).

> 	Don't allow sighand unsharing if not unsharing vm

Why not?  It's permitted to clone with unshared sighand and shared vm,
and it's useful too.

It's the combination shared sighand + unshared vm which is not
allowed by clone - so I think that's what you should refuse.

> 	Don't allow vm unsharing if task cloned with CLONE_THREAD

It would be better to do what clone does, and say "don't allow sighand
unsharing if task cloned with CLONE_THREAD".  This is because
CLONE_THREAD tasks must have shared signals.

In combination with the rule above for sighand (my rule, not yours),
that implies "don't allow vm unsharing.." as a consequence.

> 	Don't allow vm unsharing if the task is performing async io

Why not?

Async ios are tied to an mm (see lookup_ioctx in fs/aio.c), which may
be shared among tasks.  I see no reason why the async ios can't
continue and be waited in on in other tasks that may be using the old mm.

The new mm, if vm is unshared, would simply not see the outstanding
aios - in the same way as if a vm was unshared by fork().

-- Jamie

  reply	other threads:[~2005-10-12 17:19 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-10-12 16:07 [PATCH] New System call unshare (try 2) Janak Desai
2005-10-12 17:19 ` Jamie Lokier [this message]
2005-10-12 18:17   ` Janak Desai
2005-10-12 23:54     ` Jamie Lokier
2005-10-13 10:13   ` Chris Wright
2005-10-13 13:27     ` Janak Desai
2005-10-13  9:58 ` Chris Wright
2005-10-13 10:11 ` Jamie Lokier

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=20051012171914.GA8622@mail.shareable.org \
    --to=jamie@shareable.org \
    --cc=akpm@osdl.org \
    --cc=chrisw@osdl.org \
    --cc=janak@us.ibm.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nickpiggin@yahoo.com.au \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox