Subject: [nfsv4] want_delegation/delegation recovery

From: Rick Macklem <[email-masked]>
Date: Sat, 22 Jun 2013 08:24:35 -0400 (EDT)

Hi,

I am working on fixing up the FreeBSD NFSv4.1 client w.r.t.
recovery and am wondering if I can use Want_Delegation to
reclaim delegations without reclaiming an open?

In the FreeBSD client, delegations outlive the open that
was acquired with them and have opens and byte range locks
issued locally in the client on delegations.
Basically, after a while the client state is mostly delegations
with locally acquired opens and byte range locks hanging off the
delegations.

For NFSv4.0, the code uses Open/Claim_previous with "faked"
opens/open_owners to recover delegations, but it would be
cleaner to use Want_Delegation for NFSv4.1.

So, will Want_Delegation do this? And do extant NFSv4.1 servers
support this?

Thanks in advance for any assistance, rick

---

From: "Myklebust, Trond" <[email-masked]>
Date: Wed, 26 Jun 2013 21:00:47 +0000

> So, will Want_Delegation do this? And do extant NFSv4.1 servers

As far as I can tell, there is nothing in the spec to distinguish a
delegation obtained using WANT_DELEGATION from one obtained through
OPEN. I'd therefore argue that if the server has support for
WANT_DELEGATION, then you should indeed be able to use it for recovery
of any non-directory delegation.

That said, I'm not aware of any server on the market today, that
supports WANT_DELEGATION. :-(

-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
[email-masked]
www.netapp.com