OSDN Git Service
(root)
/
uclinux-h8
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
63ec2b6
)
NFS: Avoid referencing the cred twice in async rename/unlink
author
Trond Myklebust
<trond.myklebust@hammerspace.com>
Sat, 8 Feb 2020 00:44:33 +0000
(19:44 -0500)
committer
Trond Myklebust
<trond.myklebust@hammerspace.com>
Mon, 16 Mar 2020 12:34:29 +0000
(08:34 -0400)
In both async rename and rename, we take a reference to the
cred in the call arguments.
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/unlink.c
patch
|
blob
|
history
diff --git
a/fs/nfs/unlink.c
b/fs/nfs/unlink.c
index
0effeee
..
b27ebdc
100644
(file)
--- a/
fs/nfs/unlink.c
+++ b/
fs/nfs/unlink.c
@@
-98,7
+98,7
@@
static void nfs_do_call_unlink(struct inode *inode, struct nfs_unlinkdata *data)
.callback_ops = &nfs_unlink_ops,
.callback_data = data,
.workqueue = nfsiod_workqueue,
- .flags = RPC_TASK_ASYNC,
+ .flags = RPC_TASK_ASYNC
| RPC_TASK_CRED_NOREF
,
};
struct rpc_task *task;
struct inode *dir = d_inode(data->dentry->d_parent);
@@
-341,7
+341,7
@@
nfs_async_rename(struct inode *old_dir, struct inode *new_dir,
.callback_ops = &nfs_rename_ops,
.workqueue = nfsiod_workqueue,
.rpc_client = NFS_CLIENT(old_dir),
- .flags = RPC_TASK_ASYNC,
+ .flags = RPC_TASK_ASYNC
| RPC_TASK_CRED_NOREF
,
};
data = kzalloc(sizeof(*data), GFP_KERNEL);