[pnfs] [PATCH 3/9] struct nfsd4_pnfs_layoutcommit: use struct nfstime4
Benny Halevy
bhalevy at panasas.com
Sun May 27 05:27:24 EDT 2007
Signed-off-by: Benny Halevy <bhalevy at panasas.com>
---
fs/nfsd/nfs4xdr.c | 22 +++++++++++-----------
include/linux/nfsd/nfsd4_pnfs.h | 7 +++----
2 files changed, 14 insertions(+), 15 deletions(-)
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index 845c3a3..7621ec7 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -1244,7 +1244,7 @@ static int
nfsd4_decode_layoutcommit(struct nfsd4_compoundargs *argp, struct nfsd4_pnfs_layoutcommit *lcp)
{
DECODE_HEAD;
- u32 timechange, dummy32;
+ u32 timechange;
READ_BUF(36);
READ64(lcp->lc_offset);
@@ -1255,21 +1255,21 @@ nfsd4_decode_layoutcommit(struct nfsd4_compoundargs *argp, struct nfsd4_pnfs_lay
READ32(timechange);
if (timechange) {
READ_BUF(12);
- READ32(dummy32);
- if (dummy32)
- return nfserr_inval;
- READ32(lcp->lc_modify_sec);
- READ32(lcp->lc_modify_nsec);
+ READ64(lcp->lc_mtime.seconds);
+ READ32(lcp->lc_mtime.nseconds);
+ } else {
+ lcp->lc_mtime.seconds = 0;
+ lcp->lc_mtime.nseconds = 0;
}
READ_BUF(4);
READ32(timechange);
if (timechange) {
READ_BUF(12);
- READ32(dummy32);
- if (dummy32)
- return nfserr_inval;
- READ32(lcp->lc_access_sec);
- READ32(lcp->lc_access_nsec);
+ READ64(lcp->lc_atime.seconds);
+ READ32(lcp->lc_atime.nseconds);
+ } else {
+ lcp->lc_atime.seconds = 0;
+ lcp->lc_atime.nseconds = 0;
}
READ_BUF(8);
READ32(lcp->lc_loup.up_type);
diff --git a/include/linux/nfsd/nfsd4_pnfs.h b/include/linux/nfsd/nfsd4_pnfs.h
index 582d533..fb1c676 100644
--- a/include/linux/nfsd/nfsd4_pnfs.h
+++ b/include/linux/nfsd/nfsd4_pnfs.h
@@ -37,6 +37,7 @@
#define _LINUX_NFSD_NFSD4_PNFS_H
#include <linux/nfs.h>
+#include <linux/nfs_xdr.h>
/* pNFS structs */
@@ -101,10 +102,8 @@ struct nfsd4_pnfs_layoutcommit {
u32 lc_reclaim; /* request */
u32 lc_newoffset; /* request */
u64 lc_last_wr; /* request */
- u64 lc_modify_sec; /* request */
- u32 lc_modify_nsec; /* request */
- u64 lc_access_sec; /* request */
- u32 lc_access_nsec; /* request */
+ struct nfstime4 lc_mtime; /* request */
+ struct nfstime4 lc_atime; /* request */
struct nfsd4_pnfs_lo_up lc_loup; /* request */
u32 lc_size_chg; /* boolean for response */
u64 lc_newsize; /* response */
--
1.5.1
More information about the pNFS
mailing list