All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Rick Macklem <rick-bYVALtacgsT800Iu1Vt84J3p9npsUQCG@public.gmane.org>
Cc: gnb-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org,
	jeff@garzik.org, linux-nfs@vger.kernel.org, nfsv4@linux-nfs.org
Subject: Re: A new NFSv4 server...
Date: Fri, 4 Jan 2008 12:42:16 -0500	[thread overview]
Message-ID: <20080104174216.GG17112@fieldses.org> (raw)
In-Reply-To: <200801041728.MAA19743-bYVALtacgsT800Iu1Vt84J3p9npsUQCG@public.gmane.org>

On Fri, Jan 04, 2008 at 12:28:26PM -0500, Rick Macklem wrote:
> > As long as they persist while you have an open (or a delegation), it
> > shouldn't be so hard to implement, should it?  If a filehandle expires,
> > then you throw away any cache associated with it, but as long as no
> > applications hold file descriptors for it, that's not a catastrophe.
> > 
> > But I'm a little confused whether rfc 3530's 4.2.3 gives a way for the
> > server to express that guarantee.
> 
> Agreed, but I've always assumed the server can return NFS4ERR_FHEXPIRED
> at any time. (It's listed as a error for many Ops, such as Read and Write.)
> Also, what does a client do after a server reboot. It can't use
> Open/Claim_previous for recovery.

I was hoping that FH4_VOL_NOEXPIRE_WITH_OPEN might also cover opens over
server reboot, but that's a question for the ietf list.  And perhaps the
requirement to keep that filehandle->inode mapping in persistant storage
would negate the advantage to the server of volatile filehandles.

> Even if there is a "don't expire while Open" guarantee, it's still a pita
> for the client to hang onto pathnames for directories and such, so that
> they can re-lookup the fh. (And if that re-lookup happens to fail or end
> up in a different place?)

I'm confused--can't you just throw away your lookup/readdir cache for
that directory and not use it again until an application actually does a
new lookup?

Oh, but I guess the client can hold references to the directory itself
in the form of filehandles or current working directories.  So I guess
you'd need some kind of open/close (or get/put) operations for
directories as well to get agreed-on lifetimes for directory
filehandles.  Does it still seem worth it after all that?

--b.

  parent reply	other threads:[~2008-01-04 17:42 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-04 17:28 A new NFSv4 server Rick Macklem
     [not found] ` <200801041728.MAA19743-bYVALtacgsT800Iu1Vt84J3p9npsUQCG@public.gmane.org>
2008-01-04 17:42   ` J. Bruce Fields [this message]
2008-01-04 17:45   ` Trond Myklebust
  -- strict thread matches above, loose matches on Subject: below --
2008-01-04 17:11 Rick Macklem
     [not found] ` <200801041711.MAA19577-bYVALtacgsT800Iu1Vt84J3p9npsUQCG@public.gmane.org>
2008-01-05  0:51   ` Jeff Garzik
2008-01-04 15:48 Rick Macklem
     [not found] ` <200801041548.KAA18953-bYVALtacgsT800Iu1Vt84J3p9npsUQCG@public.gmane.org>
2008-01-04 17:15   ` J. Bruce Fields
2008-01-05  2:32   ` Greg Banks
2008-01-04 15:28 Rick Macklem
     [not found] ` <200801041528.KAA18776-bYVALtacgsT800Iu1Vt84J3p9npsUQCG@public.gmane.org>
2008-01-04 17:21   ` J. Bruce Fields
2008-01-04 18:03     ` Tom Haynes
     [not found]       ` <477E750A.2030905-8AdZ+HgO7noAvxtiuMwx3w@public.gmane.org>
2008-01-04 18:21         ` J. Bruce Fields
2008-01-04 19:50     ` Jeff Garzik
2008-01-04 19:57       ` Peter Åstrand
     [not found]         ` <Pine.LNX.4.64.0801042055490.18738-K9BqGu7AvB3wj5YHdwD3Ga2PxDmRETKR@public.gmane.org>
2008-01-05  0:43           ` Jeff Garzik
2008-01-03 12:16 Jeff Garzik
2008-01-03 16:32 ` J. Bruce Fields
2008-01-04  5:32   ` Jeff Garzik
2008-01-04  6:24     ` Greg Banks
     [not found]       ` <477DD11B.40909-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org>
2008-01-04  7:04         ` Jeff Garzik
2008-01-04  9:07           ` Benny Halevy
2008-01-04 15:49             ` Jeff Garzik
2008-01-04 19:51               ` Benny Halevy
2008-01-05  1:46               ` Greg Banks
2008-01-05  7:56                 ` Benny Halevy
2008-01-04 17:47             ` J. Bruce Fields
2008-01-04 19:55               ` Benny Halevy
2008-01-04  9:15           ` Peter Åstrand
2008-01-04 10:05             ` Neil Brown
     [not found]             ` <Pine.LNX.4.64.0801040954070.5004-K9BqGu7AvB3wj5YHdwD3Ga2PxDmRETKR@public.gmane.org>
2008-01-04 13:50               ` Frank van Maarseveen
2008-01-04 16:41               ` Jeff Garzik
2008-01-04 20:03                 ` Peter Åstrand
     [not found]                   ` <Pine.LNX.4.64.0801042030380.18738-K9BqGu7AvB3wj5YHdwD3Ga2PxDmRETKR@public.gmane.org>
2008-01-06 23:54                     ` James Morris
2008-01-04 20:31             ` Muntz, Daniel
2008-01-04  9:15 ` Peter Åstrand
2008-01-04 16:14   ` Jeff Garzik
2008-01-04 19:58     ` Peter Åstrand

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=20080104174216.GG17112@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=gnb-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org \
    --cc=jeff@garzik.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=nfsv4@linux-nfs.org \
    --cc=rick-bYVALtacgsT800Iu1Vt84J3p9npsUQCG@public.gmane.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.