nfs41: use nfs4_statfs_res
authorBenny Halevy <bhalevy@panasas.com>
Wed, 1 Apr 2009 13:21:56 +0000 (09:21 -0400)
committerBenny Halevy <bhalevy@panasas.com>
Wed, 17 Jun 2009 17:46:22 +0000 (10:46 -0700)
In preparation for nfs41 sequence processing.

Signed-off-by: Andy Admason <andros@netapp.com>
[define nfs4_statfs_res]
Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/nfs4proc.c
fs/nfs/nfs4xdr.c
include/linux/nfs_xdr.h

index b0ec8ff..b715f60 100644 (file)
@@ -2426,10 +2426,13 @@ static int _nfs4_proc_statfs(struct nfs_server *server, struct nfs_fh *fhandle,
                .fh = fhandle,
                .bitmask = server->attr_bitmask,
        };
+       struct nfs4_statfs_res res = {
+               .fsstat = fsstat,
+       };
        struct rpc_message msg = {
                .rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_STATFS],
                .rpc_argp = &args,
-               .rpc_resp = fsstat,
+               .rpc_resp = &res,
        };
 
        nfs_fattr_init(fsstat->fattr);
index 1e41420..b7871ad 100644 (file)
@@ -4387,7 +4387,8 @@ static int nfs4_xdr_dec_pathconf(struct rpc_rqst *req, __be32 *p, struct nfs_pat
 /*
  * STATFS request
  */
-static int nfs4_xdr_dec_statfs(struct rpc_rqst *req, __be32 *p, struct nfs_fsstat *fsstat)
+static int nfs4_xdr_dec_statfs(struct rpc_rqst *req, __be32 *p,
+                              struct nfs4_statfs_res *res)
 {
        struct xdr_stream xdr;
        struct compound_hdr hdr;
@@ -4398,7 +4399,7 @@ static int nfs4_xdr_dec_statfs(struct rpc_rqst *req, __be32 *p, struct nfs_fssta
        if (!status)
                status = decode_putfh(&xdr);
        if (!status)
-               status = decode_statfs(&xdr, fsstat);
+               status = decode_statfs(&xdr, res->fsstat);
        return status;
 }
 
index f71260a..4dac59e 100644 (file)
@@ -795,6 +795,11 @@ struct nfs4_statfs_arg {
        struct nfs4_sequence_args       seq_args;
 };
 
+struct nfs4_statfs_res {
+       struct nfs_fsstat              *fsstat;
+       struct nfs4_sequence_res        seq_res;
+};
+
 struct nfs4_server_caps_arg {
        struct nfs_fh                  *fhandle;
        struct nfs4_sequence_args       seq_args;