shaharhoch@gmail.com has uploaded this change for review.

View Change

nfs4_op_open: Allow open with CLAIM_PREVIOUS when FSAL supports grace period

Currently, Ganesha only allows open with CLAIM_PREVIOUS in case
`cid_allow_reclaim==true`, which requires using the `nfs4_recovery_backed`.
In case we want the FSAL to handle reclaim requests (which is signaled
by fso_grace_method) and we don't use the recovery backend we were
unable to reclaim locks. This patch will allow open with CLAIM_PREVIOUS
in case fso_grace_method is enabled, even if `cid_allow_reclaim` is not

Note that in nfs4_op_lock, in case `fso_grace_method` is enabled
we don't look at `cid_allow_reclaim` and pass it to the FSAL, as
you would expect, but before the client calls the LOCK operation
with reclaim, it opens with CLAIM_PREVOIUS, which failed with
`NFS4ERR_NO_GRACE` and so the client never even sent the reclaim
lock request.

Change-Id: I5973b3358e578f58c20b8fcf4c9c32da5c7877d7
Signed-off-by: Shahar Hochma <shaharhoch@gmail.com>
---
M src/Protocols/NFS/nfs4_op_open.c
1 file changed, 28 insertions(+), 3 deletions(-)

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

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

Gerrit-Project: ffilz/nfs-ganesha
Gerrit-Branch: next
Gerrit-Change-Id: I5973b3358e578f58c20b8fcf4c9c32da5c7877d7
Gerrit-Change-Number: 546497
Gerrit-PatchSet: 1
Gerrit-Owner: shaharhoch@gmail.com
Gerrit-MessageType: newchange