Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 43652ad5 authored by Benny Halevy's avatar Benny Halevy
Browse files

nfs41: use nfs4_server_caps_arg



In preparation for nfs41 sequence processing.

Signed-off-by: default avatarAndy Admason <andros@netapp.com>
[define nfs4_server_caps_arg]
Signed-off-by: default avatarBenny Halevy <bhalevy@panasas.com>
Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent 557134a3
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -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)
{
	struct nfs4_server_caps_arg args = {
		.fhandle = fhandle,
	};
	struct nfs4_server_caps_res res = {};
	struct rpc_message msg = {
		.rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_SERVER_CAPS],
		.rpc_argp = fhandle,
		.rpc_argp = &args,
		.rpc_resp = &res,
	};
	int status;
+3 −2
Original line number Diff line number Diff line
@@ -1900,7 +1900,8 @@ static int nfs4_xdr_enc_statfs(struct rpc_rqst *req, __be32 *p, const struct nfs
/*
 * 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 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);
	encode_compound_hdr(&xdr, &hdr);
	encode_putfh(&xdr, fhandle, &hdr);
	encode_putfh(&xdr, args->fhandle, &hdr);
	encode_getattr_one(&xdr, FATTR4_WORD0_SUPPORTED_ATTRS|
			   FATTR4_WORD0_LINK_SUPPORT|
			   FATTR4_WORD0_SYMLINK_SUPPORT|
+5 −0
Original line number Diff line number Diff line
@@ -791,6 +791,11 @@ struct nfs4_statfs_arg {
	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 {
	u32				attr_bitmask[2];
	u32				acl_bitmask;