From 754bc7682bfe6a877785a1248bf899b097984a11 Mon Sep 17 00:00:00 2001 From: Neil Brown Date: Mon, 22 Sep 2003 05:23:13 -0700 Subject: [PATCH] knfsd: nfsdv4 byte range locking - LOCKU From: "William A.(Andy) Adamson" This implments the LOCKU operation. These all pass the connectathon lock test suite against the solaris nfsv4 client. --- include/linux/nfsd/xdr4.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'include') diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h index a39e3c2951e3..5140f2061b30 100644 --- a/include/linux/nfsd/xdr4.h +++ b/include/linux/nfsd/xdr4.h @@ -173,6 +173,17 @@ struct nfsd4_lockt { struct nfsd4_lock_denied lt_denied; }; + +struct nfsd4_locku { + u32 lu_type; + u32 lu_seqid; + stateid_t lu_stateid; + u64 lu_offset; + u64 lu_length; + struct nfs4_stateowner *lu_stateowner; +}; + + struct nfsd4_lookup { u32 lo_len; /* request */ char * lo_name; /* request */ @@ -330,6 +341,7 @@ struct nfsd4_op { struct nfsd4_link link; struct nfsd4_lock lock; struct nfsd4_lockt lockt; + struct nfsd4_locku locku; struct nfsd4_lookup lookup; struct nfsd4_verify nverify; struct nfsd4_open open; @@ -425,6 +437,8 @@ extern int nfsd4_lock(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_lock *lock); extern int nfsd4_lockt(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nfsd4_lockt *lockt); +extern int nfsd4_locku(struct svc_rqst *rqstp, struct svc_fh *current_fh, + struct nfsd4_locku *locku); #endif /* -- cgit v1.2.3