User: Password:
|
|
Subscribe / Log in / New account

Re: VFS deadlock ?

From:  Al Viro <viro-AT-ZenIV.linux.org.uk>
To:  Linus Torvalds <torvalds-AT-linux-foundation.org>
Subject:  Re: VFS deadlock ?
Date:  Fri, 22 Mar 2013 00:12:57 +0000
Message-ID:  <20130322001257.GH21522@ZenIV.linux.org.uk>
Cc:  Dave Jones <davej-AT-redhat.com>, Linux Kernel <linux-kernel-AT-vger.kernel.org>, "Eric W. Biederman" <ebiederm-AT-xmission.com>
Archive-link:  Article

On Thu, Mar 21, 2013 at 05:01:49PM -0700, Linus Torvalds wrote:
> On Thu, Mar 21, 2013 at 4:58 PM, Linus Torvalds
> <torvalds@linux-foundation.org> wrote:
> >
> > So yes, it's against the rules, and we get that deadlock right now,
> > but one solution would be to just allow this particular case. The
> > patch for the deadlock looks dead simple:
> 
> It should go without saying that that whitespace-damaged patch is
> entirely untested. But especially since we need to back-port whatever
> fix, it would be good if we could make the fix be something as simple
> as this. Because I don't believe we really want to backport some big
> network-namespace reorganization.
> 
> This is, of course, all assuming that hardlinked directories are ok if
> we can just guarantee the absence of loops. If there's some other
> reason why they'd be problematic, we're screwed.

See the posting upthread.  We could try to kludge around that as well
(e.g. have d_ancestor() compare ->d_inode instead of dentries themselves),
but I really think it's a lousy idea only inviting further abuse.

What we should do, IMO, is to turn /proc/<pid>/net into a honest symlink -
to ../nets/<netns ID>/net.  Hell, might even make it a magical symlink
instead...


(Log in to post comments)


Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds