mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 21:38:32 +08:00
NFS: Remove the nfs4_label from the nfs4_link_res struct
Again, use the fattr's label field instead. Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
This commit is contained in:
parent
68be1742c2
commit
aa7ca3b2de
@ -4790,7 +4790,6 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct
|
||||
};
|
||||
struct nfs4_link_res res = {
|
||||
.server = server,
|
||||
.label = NULL,
|
||||
};
|
||||
struct rpc_message msg = {
|
||||
.rpc_proc = &nfs4_procedures[NFSPROC4_CLNT_LINK],
|
||||
@ -4799,18 +4798,12 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct
|
||||
};
|
||||
int status = -ENOMEM;
|
||||
|
||||
res.fattr = nfs_alloc_fattr();
|
||||
res.fattr = nfs_alloc_fattr_with_label(server);
|
||||
if (res.fattr == NULL)
|
||||
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_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);
|
||||
status = nfs4_call_sync(server->client, server, &msg, &arg.seq_args, &res.seq_res, 1);
|
||||
if (!status) {
|
||||
@ -4819,12 +4812,9 @@ static int _nfs4_proc_link(struct inode *inode, struct inode *dir, const struct
|
||||
nfs4_inc_nlink(inode);
|
||||
status = nfs_post_op_update_inode(inode, res.fattr);
|
||||
if (!status)
|
||||
nfs_setsecurity(inode, res.fattr, res.label);
|
||||
nfs_setsecurity(inode, res.fattr, res.fattr->label);
|
||||
}
|
||||
|
||||
|
||||
nfs4_label_free(res.label);
|
||||
|
||||
out:
|
||||
nfs_free_fattr(res.fattr);
|
||||
return status;
|
||||
|
@ -6323,7 +6323,7 @@ static int nfs4_xdr_dec_link(struct rpc_rqst *rqstp, struct xdr_stream *xdr,
|
||||
status = decode_restorefh(xdr);
|
||||
if (status)
|
||||
goto out;
|
||||
decode_getfattr_label(xdr, res->fattr, res->label, res->server);
|
||||
decode_getfattr_label(xdr, res->fattr, res->fattr->label, res->server);
|
||||
out:
|
||||
return status;
|
||||
}
|
||||
|
@ -1079,7 +1079,6 @@ struct nfs4_link_res {
|
||||
struct nfs4_sequence_res seq_res;
|
||||
const struct nfs_server * server;
|
||||
struct nfs_fattr * fattr;
|
||||
struct nfs4_label *label;
|
||||
struct nfs4_change_info cinfo;
|
||||
struct nfs_fattr * dir_attr;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user