diff options
author | Benny Halevy <bhalevy@panasas.com> | 2009-04-01 09:21:57 -0400 |
---|---|---|
committer | Benny Halevy <bhalevy@panasas.com> | 2009-06-17 13:46:23 -0400 |
commit | 3dda5e434721f942870ee30bc6103761618d410f (patch) | |
tree | a478a9c0e25e3d560321a3256d4477fcfc86232e | |
parent | 24ad148a0ff74b1e703a8bc5b3e0793dc7d4e3a9 (diff) |
nfs41: use nfs4_fsinfo_res
In preparation for nfs41 sequence processing.
Signed-off-by: Andy Admason <andros@netapp.com>
[define nfs4_fsinfo_res]
Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
-rw-r--r-- | fs/nfs/nfs4proc.c | 5 | ||||
-rw-r--r-- | fs/nfs/nfs4xdr.c | 5 | ||||
-rw-r--r-- | include/linux/nfs_xdr.h | 5 |
3 files changed, 12 insertions, 3 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index b715f6057611..b8915ef533da 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c | |||
@@ -2458,10 +2458,13 @@ static int _nfs4_do_fsinfo(struct nfs_server *server, struct nfs_fh *fhandle, | |||
2458 | .fh = fhandle, | 2458 | .fh = fhandle, |
2459 | .bitmask = server->attr_bitmask, | 2459 | .bitmask = server->attr_bitmask, |
2460 | }; | 2460 | }; |
2461 | struct nfs4_fsinfo_res res = { | ||
2462 | .fsinfo = fsinfo, | ||
2463 | }; | ||
2461 | struct rpc_message msg = { | 2464 | struct rpc_message msg = { |
2462 | .rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_FSINFO], | 2465 | .rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_FSINFO], |
2463 | .rpc_argp = &args, | 2466 | .rpc_argp = &args, |
2464 | .rpc_resp = fsinfo, | 2467 | .rpc_resp = &res, |
2465 | }; | 2468 | }; |
2466 | 2469 | ||
2467 | return rpc_call_sync(server->client, &msg, 0); | 2470 | return rpc_call_sync(server->client, &msg, 0); |
diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c index b7871ad82aac..d9ab8209c286 100644 --- a/fs/nfs/nfs4xdr.c +++ b/fs/nfs/nfs4xdr.c | |||
@@ -4351,7 +4351,8 @@ out: | |||
4351 | /* | 4351 | /* |
4352 | * FSINFO request | 4352 | * FSINFO request |
4353 | */ | 4353 | */ |
4354 | static int nfs4_xdr_dec_fsinfo(struct rpc_rqst *req, __be32 *p, struct nfs_fsinfo *fsinfo) | 4354 | static int nfs4_xdr_dec_fsinfo(struct rpc_rqst *req, __be32 *p, |
4355 | struct nfs4_fsinfo_res *res) | ||
4355 | { | 4356 | { |
4356 | struct xdr_stream xdr; | 4357 | struct xdr_stream xdr; |
4357 | struct compound_hdr hdr; | 4358 | struct compound_hdr hdr; |
@@ -4362,7 +4363,7 @@ static int nfs4_xdr_dec_fsinfo(struct rpc_rqst *req, __be32 *p, struct nfs_fsinf | |||
4362 | if (!status) | 4363 | if (!status) |
4363 | status = decode_putfh(&xdr); | 4364 | status = decode_putfh(&xdr); |
4364 | if (!status) | 4365 | if (!status) |
4365 | status = decode_fsinfo(&xdr, fsinfo); | 4366 | status = decode_fsinfo(&xdr, res->fsinfo); |
4366 | return status; | 4367 | return status; |
4367 | } | 4368 | } |
4368 | 4369 | ||
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index 4dac59ef6f4f..7d64913cbb1b 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h | |||
@@ -675,6 +675,11 @@ struct nfs4_fsinfo_arg { | |||
675 | struct nfs4_sequence_args seq_args; | 675 | struct nfs4_sequence_args seq_args; |
676 | }; | 676 | }; |
677 | 677 | ||
678 | struct nfs4_fsinfo_res { | ||
679 | struct nfs_fsinfo *fsinfo; | ||
680 | struct nfs4_sequence_res seq_res; | ||
681 | }; | ||
682 | |||
678 | struct nfs4_getattr_arg { | 683 | struct nfs4_getattr_arg { |
679 | const struct nfs_fh * fh; | 684 | const struct nfs_fh * fh; |
680 | const u32 * bitmask; | 685 | const u32 * bitmask; |