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
next prev parent 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