Commit aa7ca3b2 authored by Anna Schumaker's avatar Anna Schumaker Committed by Trond Myklebust

NFS: Remove the nfs4_label from the nfs4_link_res struct

Again, use the fattr's label field instead.
Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent 68be1742
...@@ -4790,7 +4790,6 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct ...@@ -4790,7 +4790,6 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct
}; };
struct nfs4_link_res res = { struct nfs4_link_res res = {
.server = server, .server = server,
.label = NULL,
}; };
struct rpc_message msg = { struct rpc_message msg = {
.rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_LINK], .rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_LINK],
...@@ -4799,18 +4798,12 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct ...@@ -4799,18 +4798,12 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct
}; };
int status = -ENOMEM; int status = -ENOMEM;
res.fattr = nfs_alloc_fattr(); res.fattr = nfs_alloc_fattr_with_label(server);
if (res.fattr == NULL) if (res.fattr == NULL)
goto out; goto out;
res.label = nfs4_label_alloc(server, GFP_KERNEL);
if (IS_ERR(res.label)) {
status = PTR_ERR(res.label);
goto out;
}
nfs4_inode_make_writeable(inode); nfs4_inode_make_writeable(inode);
nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, res.label), inode, nfs4_bitmap_copy_adjust(bitmask, nfs4_bitmask(server, res.fattr->label), inode,
NFS_INO_INVALID_CHANGE); NFS_INO_INVALID_CHANGE);
status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1); status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1);
if (!status) { if (!status) {
...@@ -4819,12 +4812,9 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct ...@@ -4819,12 +4812,9 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct
nfs4_inc_nlink(inode); nfs4_inc_nlink(inode);
status = nfs_post_op_update_inode(inode, res.fattr); status = nfs_post_op_update_inode(inode, res.fattr);
if (!status) if (!status)
nfs_setsecurity(inode, res.fattr, res.label); nfs_setsecurity(inode, res.fattr, res.fattr->label);
} }
nfs4_label_free(res.label);
out: out:
nfs_free_fattr(res.fattr); nfs_free_fattr(res.fattr);
return status; return status;
......
...@@ -6323,7 +6323,7 @@ static int nfs4_xdr_dec_link(struct rpc_rqst *rqstp, struct xdr_stream *xdr, ...@@ -6323,7 +6323,7 @@ static int nfs4_xdr_dec_link(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
status = decode_restorefh(xdr); status = decode_restorefh(xdr);
if (status) if (status)
goto out; goto out;
decode_getfattr_label(xdr, res->fattr, res->label, res->server); decode_getfattr_label(xdr, res->fattr, res->fattr->label, res->server);
out: out:
return status; return status;
} }
......
...@@ -1079,7 +1079,6 @@ struct nfs4_link_res { ...@@ -1079,7 +1079,6 @@ struct nfs4_link_res {
struct nfs4_sequence_res seq_res; struct nfs4_sequence_res seq_res;
const struct nfs_server * server; const struct nfs_server * server;
struct nfs_fattr * fattr; struct nfs_fattr * fattr;
struct nfs4_label *label;
struct nfs4_change_info cinfo; struct nfs4_change_info cinfo;
struct nfs_fattr * dir_attr; struct nfs_fattr * dir_attr;
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment