From: Bruce Fields <bfields@fieldses.org>
To: "Myklebust, Trond" <Trond.Myklebust@netapp.com>
Cc: Jeff Layton <jlayton@redhat.com>,
Al Viro <viro@ZenIV.linux.org.uk>,
"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [RFC] F_SETLEASE mess
Date: Mon, 8 Jul 2013 15:34:09 -0400 [thread overview]
Message-ID: <20130708193409.GF29071@fieldses.org> (raw)
In-Reply-To: <1373311295.2231.56.camel@leira.trondhjem.org>
On Mon, Jul 08, 2013 at 07:21:37PM +0000, Myklebust, Trond wrote:
> On Mon, 2013-07-08 at 14:53 -0400, Bruce Fields wrote:
> > On Mon, Jul 08, 2013 at 06:10:40PM +0000, Myklebust, Trond wrote:
> > > On Mon, 2013-07-08 at 10:17 -0400, Bruce Fields wrote:
> > > > On Fri, Jul 05, 2013 at 05:46:19PM -0400, Jeff Layton wrote:
> > > > > I think the bigger issue though is that looking at refcounts in order to
> > > > > determine when we have a conflicting open is just plain wrong. There are
> > > > > all sorts of reasons one might see a raised refcount that don't involve
> > > > > conflicting opens (Al's stat() example for instance). It seems like we
> > > > > ought to shoot for a solution that doesn't rely (solely) on inode and
> > > > > dentry refcounts.
> > > >
> > > > Note that NFSv4 write delegations will need to affect stat as well.
> > > > (Once you let a client perform writes locally, that client becomes the
> > > > authority on the attributes, so we have to call back to it on stat.)
> > >
> > > Umm... Yes, but are we ever really going to want to implement that part
> > > of the spec? All the client can tell you is 'this file is dirty' and/or
> > > it can tell you that a size change has occurred.
> > >
> > > It's cute that the protocol allows you to do this, but it's not
> > > particularly practical.
> >
> > If we don't take some sort of action on stat then I don't see how to
> > avoid e.g. breaking "make".
>
> We already cache writes without breaking "make". Why do you think the
> presence of a delegation must necessarily change everything?
As long as it holds a write delegation a client can delay updating data
or attributes arbitrarily--so if the server continues to return the old
attributes then e.g. "make" could fail to notice an update even long
after no application on any client is accessing the file any more.
Could you explain what I'm missing?
--b.
next prev parent reply other threads:[~2013-07-08 19:34 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-05 9:04 [RFC] F_SETLEASE mess Al Viro
2013-07-05 10:51 ` Jeff Layton
2013-07-05 12:08 ` Jeff Layton
2013-07-05 16:25 ` Bruce Fields
2013-07-05 21:46 ` Jeff Layton
2013-07-08 14:17 ` Bruce Fields
2013-07-08 14:33 ` Jeff Layton
2013-07-08 18:10 ` Myklebust, Trond
2013-07-08 18:53 ` Bruce Fields
2013-07-08 19:21 ` Myklebust, Trond
2013-07-08 19:34 ` Bruce Fields [this message]
2013-07-08 20:14 ` Myklebust, Trond
2013-07-08 21:17 ` Bruce Fields
2013-07-08 22:25 ` Myklebust, Trond
2013-07-08 23:19 ` Bruce Fields
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=20130708193409.GF29071@fieldses.org \
--to=bfields@fieldses.org \
--cc=Trond.Myklebust@netapp.com \
--cc=jlayton@redhat.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--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;
as well as URLs for NNTP newsgroup(s).