nfs41: use nfs4_server_caps_arg
In preparation for nfs41 sequence processing. Signed-off-by: Andy Admason <andros@netapp.com> [define nfs4_server_caps_arg] Signed-off-by: Benny Halevy <bhalevy@panasas.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
@@ -1584,10 +1584,13 @@ void nfs4_close_context(struct nfs_open_context *ctx, int is_sync)
|
|||||||
|
|
||||||
static int _nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle)
|
static int _nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle)
|
||||||
{
|
{
|
||||||
|
struct nfs4_server_caps_arg args = {
|
||||||
|
.fhandle = fhandle,
|
||||||
|
};
|
||||||
struct nfs4_server_caps_res res = {};
|
struct nfs4_server_caps_res res = {};
|
||||||
struct rpc_message msg = {
|
struct rpc_message msg = {
|
||||||
.rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_SERVER_CAPS],
|
.rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_SERVER_CAPS],
|
||||||
.rpc_argp = fhandle,
|
.rpc_argp = &args,
|
||||||
.rpc_resp = &res,
|
.rpc_resp = &res,
|
||||||
};
|
};
|
||||||
int status;
|
int status;
|
||||||
|
@@ -1900,7 +1900,8 @@ static int nfs4_xdr_enc_statfs(struct rpc_rqst *req, __be32 *p, const struct nfs
|
|||||||
/*
|
/*
|
||||||
* GETATTR_BITMAP request
|
* GETATTR_BITMAP request
|
||||||
*/
|
*/
|
||||||
static int nfs4_xdr_enc_server_caps(struct rpc_rqst *req, __be32 *p, const struct nfs_fh *fhandle)
|
static int nfs4_xdr_enc_server_caps(struct rpc_rqst *req, __be32 *p,
|
||||||
|
struct nfs4_server_caps_arg *args)
|
||||||
{
|
{
|
||||||
struct xdr_stream xdr;
|
struct xdr_stream xdr;
|
||||||
struct compound_hdr hdr = {
|
struct compound_hdr hdr = {
|
||||||
@@ -1909,7 +1910,7 @@ static int nfs4_xdr_enc_server_caps(struct rpc_rqst *req, __be32 *p, const struc
|
|||||||
|
|
||||||
xdr_init_encode(&xdr, &req->rq_snd_buf, p);
|
xdr_init_encode(&xdr, &req->rq_snd_buf, p);
|
||||||
encode_compound_hdr(&xdr, &hdr);
|
encode_compound_hdr(&xdr, &hdr);
|
||||||
encode_putfh(&xdr, fhandle, &hdr);
|
encode_putfh(&xdr, args->fhandle, &hdr);
|
||||||
encode_getattr_one(&xdr, FATTR4_WORD0_SUPPORTED_ATTRS|
|
encode_getattr_one(&xdr, FATTR4_WORD0_SUPPORTED_ATTRS|
|
||||||
FATTR4_WORD0_LINK_SUPPORT|
|
FATTR4_WORD0_LINK_SUPPORT|
|
||||||
FATTR4_WORD0_SYMLINK_SUPPORT|
|
FATTR4_WORD0_SYMLINK_SUPPORT|
|
||||||
|
@@ -791,6 +791,11 @@ struct nfs4_statfs_arg {
|
|||||||
struct nfs4_sequence_args seq_args;
|
struct nfs4_sequence_args seq_args;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct nfs4_server_caps_arg {
|
||||||
|
struct nfs_fh *fhandle;
|
||||||
|
struct nfs4_sequence_args seq_args;
|
||||||
|
};
|
||||||
|
|
||||||
struct nfs4_server_caps_res {
|
struct nfs4_server_caps_res {
|
||||||
u32 attr_bitmask[2];
|
u32 attr_bitmask[2];
|
||||||
u32 acl_bitmask;
|
u32 acl_bitmask;
|
||||||
|
Reference in New Issue
Block a user