[pnfs] [PATCH 01/10] nfs41: don't use delegation stateid on close
andros at umihc.edu
andros at umihc.edu
Fri Mar 14 12:23:37 EDT 2008
From: Andy Adamson <andros at umich.edu>
The nfs4_state->stateid holds either a delegation stateid, or the open_stateid
when no delegation is granted. The nfs4_state->open_stateid always holds the
open stateid. Use the nfs4_state->open_stateid for the nfsv41 close operation.
Signed-off-by: Andy Adamson<andros at umich.edu>
---
fs/nfs/nfs4proc.c | 13 ++-----------
1 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 2db50bf..2ebeaca 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -1762,19 +1762,10 @@ int nfs4_do_close(struct path *path, struct nfs4_state *state, int wait)
calldata->arg.seqid = nfs_alloc_seqid(&state->owner->so_seqid);
if (calldata->arg.seqid == NULL)
goto out_free_calldata;
- switch (server->nfs_client->cl_minorversion) {
+ calldata->arg.stateid = &state->open_stateid;
#ifdef CONFIG_NFS_V4_1
- case 1:
- calldata->arg.stateid = &state->stateid;
- memset(&calldata->arg.stateid->data, 0, 4);
- break;
+ memset(&calldata->arg.stateid->data, 0, 4);
#endif /* CONFIG_NFS_V4_1 */
- case 0:
- calldata->arg.stateid = &state->open_stateid;
- break;
- default:
- BUG();
- }
calldata->arg.bitmask = server->attr_bitmask;
calldata->res.fattr = &calldata->fattr;
calldata->res.server = server;
--
1.5.0.2
More information about the pNFS
mailing list