Jeff Layton has uploaded this change for review.

View Change

NFS: handle recalled CLAIM_PREVIOUS delegations correctly

It's possible that we'll hand out a delegation to a client, and then
crash, and during the downtime conflicting access occurs that would
cause the delegation to be recalled.

Currently, we just refuse to grant the delegation in the reclaim request
in that case, but that can be problematic, particularly with write
delegations.

The RFCs state that we should instead grant reclaimed delegations during
a recall, and set the "recalled" flag in them. This patch fixes that
handling in ganesha.

When we're handling a request to reclaim a delegation and the FSAL
won't grant us one, then go ahead and grant it anyway and set the
recalled flag in the response.

Change-Id: I9bca3087e9b1c25fd65839189aae5b05a2b899fd
Signed-off-by: Jeff Layton <jlayton@redhat.com>
---
M src/Protocols/NFS/nfs4_op_open.c
1 file changed, 13 insertions(+), 10 deletions(-)

git pull ssh://review.gerrithub.io:29418/ffilz/nfs-ganesha refs/changes/85/417785/1

To view, visit change 417785. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-MessageType: newchange
Gerrit-Change-Id: I9bca3087e9b1c25fd65839189aae5b05a2b899fd
Gerrit-Change-Number: 417785
Gerrit-PatchSet: 1
Gerrit-Owner: Jeff Layton <jlayton@redhat.com>