From: Miklos Szeredi <miklos@szeredi.hu>
To: Jeff Layton <jlayton@redhat.com>
Cc: Ric Wheeler <rwheeler@redhat.com>, Anand Avati <avati@redhat.com>,
Brian Foster <bfoster@redhat.com>,
Linux FS Devel <linux-fsdevel@vger.kernel.org>,
fuse-devel <fuse-devel@lists.sourceforge.net>,
Alexander Viro <aviro@redhat.com>,
David Howells <dhowells@redhat.com>,
Eric Paris <eparis@redhat.com>
Subject: Re: [PATCH] [REPOST] fuse: drop dentry on failed revalidate
Date: Fri, 2 Aug 2013 16:42:00 +0200 [thread overview]
Message-ID: <CAJfpegvCBaaiasxbDEVnhEWm4YL6BMSfiqLHqbb9MXVcqxoFpA@mail.gmail.com> (raw)
In-Reply-To: <20130802081701.5d9cc9bc@corrin.poochiereds.net>
On Fri, Aug 2, 2013 at 2:17 PM, Jeff Layton <jlayton@redhat.com> wrote:
> On Tue, 30 Jul 2013 18:16:55 +0200 Miklos Szeredi <miklos@szeredi.hu> wrote:
>> The other problem is that, unlike NFS, fuse doesn't currently
>> reconnect these subtrees when it finds them at a different point in
>> the tree. d_drop on it just makes things worse because at that point
>> that subtree will not be accessible anymore (while the fuse fs is
>> mounted, that is). This could be fixed pretty easily by using the
>> d_materialise_*() helpers.
>>
>
> Yes, but...
>
> This works on NFS since we have an expectation that we can identify an
> inode again when we see it. Given some of the strange userland
> filesystems that FUSE supports, does that expectation hold there? If
> not then you might still end up with disconnected subtrees.
We'll end up with disconnected subtrees in NFS as well. That state
can remain indefinitely. It will either be reconnected when we come
accross the inode "by chance" or dissolved when it is no longer
referenced and the dentries reclaimed.
And as long as there are no mounts under the disconnected subtree,
there's no big problem.
If some strange filesystem doesn't support identifying a disconnected
subtree it will just not be reconnected. But that can happen with NFS
as well, if the new location is never accessed, so it's not something
new.
Thanks,
Miklos
next prev parent reply other threads:[~2013-08-02 14:42 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20130725055209.GA15621@sh-el5.eng.rdu2.redhat.com>
2013-07-25 14:42 ` [PATCH] [REPOST] fuse: drop dentry on failed revalidate Ric Wheeler
2013-07-30 16:16 ` Miklos Szeredi
2013-07-30 19:30 ` Ric Wheeler
2013-08-01 16:39 ` Miklos Szeredi
[not found] ` <20130801163940.GA1356-nYI/l+Q8b4r16c5iV7KQqR1Qg9XOENNVk/YoNI2nt5o@public.gmane.org>
2013-08-01 18:45 ` Ric Wheeler
[not found] ` <51FAACD9.8020205-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2013-08-02 9:02 ` Miklos Szeredi
[not found] ` <CAJfpegu1RXAYOGWyuCeckJ8WHfK=3dFc5bm1zsM=1Qt3zcfbsg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-08-02 11:43 ` Jeff Layton
2013-08-02 14:30 ` Miklos Szeredi
[not found] ` <CAJfpegthEZJEQhus=4CnvR+yb+vGj5c85kUnn18SrR0S1wbbtQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-08-02 16:58 ` Jeff Layton
2013-08-02 12:17 ` Jeff Layton
2013-08-02 14:42 ` Miklos Szeredi [this message]
2013-08-02 17:32 ` Jeff Layton
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=CAJfpegvCBaaiasxbDEVnhEWm4YL6BMSfiqLHqbb9MXVcqxoFpA@mail.gmail.com \
--to=miklos@szeredi.hu \
--cc=avati@redhat.com \
--cc=aviro@redhat.com \
--cc=bfoster@redhat.com \
--cc=dhowells@redhat.com \
--cc=eparis@redhat.com \
--cc=fuse-devel@lists.sourceforge.net \
--cc=jlayton@redhat.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=rwheeler@redhat.com \
/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;
as well as URLs for NNTP newsgroup(s).