diff options
author | Bryan Schumaker <bjschuma@netapp.com> | 2011-06-02 14:59:09 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2011-07-12 13:40:28 -0400 |
commit | 9aeda35fd643eba683fdb8dba8907fa796a85dda (patch) | |
tree | df797ea6f4eca0601edcdf941ac678d11c79a07a /include | |
parent | 7d9747947ae66d8f6a9a9a023a3a5e28df6a536e (diff) |
NFS: added FREE_STATEID call
FREE_STATEID is used to tell the server that we want to free a stateid
that no longer has any locks associated with it. This allows the client
to reclaim locks without encountering edge conditions documented in
section 8.4.3 of RFC 5661.
Signed-off-by: Bryan Schumaker <bjschuma@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/nfs4.h | 1 | ||||
-rw-r--r-- | include/linux/nfs_xdr.h | 10 |
2 files changed, 11 insertions, 0 deletions
diff --git a/include/linux/nfs4.h b/include/linux/nfs4.h index efe07f7a8765..a3c4bc800dce 100644 --- a/include/linux/nfs4.h +++ b/include/linux/nfs4.h | |||
@@ -565,6 +565,7 @@ enum { | |||
565 | NFSPROC4_CLNT_LAYOUTRETURN, | 565 | NFSPROC4_CLNT_LAYOUTRETURN, |
566 | NFSPROC4_CLNT_SECINFO_NO_NAME, | 566 | NFSPROC4_CLNT_SECINFO_NO_NAME, |
567 | NFSPROC4_CLNT_TEST_STATEID, | 567 | NFSPROC4_CLNT_TEST_STATEID, |
568 | NFSPROC4_CLNT_FREE_STATEID, | ||
568 | }; | 569 | }; |
569 | 570 | ||
570 | /* nfs41 types */ | 571 | /* nfs41 types */ |
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index e696c1fb139a..209455561749 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h | |||
@@ -1102,6 +1102,16 @@ struct nfs41_test_stateid_res { | |||
1102 | struct nfs4_sequence_res seq_res; | 1102 | struct nfs4_sequence_res seq_res; |
1103 | }; | 1103 | }; |
1104 | 1104 | ||
1105 | struct nfs41_free_stateid_args { | ||
1106 | nfs4_stateid *stateid; | ||
1107 | struct nfs4_sequence_args seq_args; | ||
1108 | }; | ||
1109 | |||
1110 | struct nfs41_free_stateid_res { | ||
1111 | unsigned int status; | ||
1112 | struct nfs4_sequence_res seq_res; | ||
1113 | }; | ||
1114 | |||
1105 | #endif /* CONFIG_NFS_V4_1 */ | 1115 | #endif /* CONFIG_NFS_V4_1 */ |
1106 | 1116 | ||
1107 | struct nfs_page; | 1117 | struct nfs_page; |