[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1294883160.2757.2.camel@perseus>
Date: Thu, 13 Jan 2011 09:46:00 +0800
From: Ian Kent <raven@...maw.net>
To: Nick Piggin <npiggin@...il.com>
Cc: "Aneesh Kumar K. V" <aneesh.kumar@...ux.vnet.ibm.com>,
aelder@....com, Linus Torvalds <torvalds@...ux-foundation.org>,
Nick Piggin <npiggin@...nel.dk>,
Al Viro <viro@...iv.linux.org.uk>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [announce] vfs-scale git tree update
On Thu, 2011-01-13 at 11:58 +1100, Nick Piggin wrote:
> On Wed, Jan 12, 2011 at 4:01 PM, Ian Kent <raven@...maw.net> wrote:
> > On Wed, 2011-01-12 at 10:19 +0530, Aneesh Kumar K. V wrote:
> >> for 9p I did the other way round. lookup now set the dentry op for both
> >> negative and positive dentries and rest of the place we dropped
> >> d_set_d_op (b8b80cf37c7f0e32729262f805bc0fa81c3e9d12 have the details)
> >
> > Sadly I can't do that.
> >
> > For now I need to avoid calls to ->d_revalidate() as much as possible to
> > reduce a potential deadlock and have access to the flags of the negative
> > dentry (during create) for the purpose of blocking concurrent walks.
>
> What prevents your d_revalidate from just checking for negative dentry?
Whether the dentry is negative or not doesn't change the need to block
walks which introduces the possibility of blocking while holding the
parent i_mutex, since it can't be released in revalidate.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists