summaryrefslogtreecommitdiffstats
path: root/fs/dcache.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2016-06-11 11:25:50 +0200
committerIngo Molnar <mingo@kernel.org>2016-06-11 11:25:50 +0200
commit50c0587eedc15235144216f2d2a5bd2a85e03289 (patch)
tree74f24e52bba71efea51dc8ada3ac5427aa1627e5 /fs/dcache.c
parent3b290398638ee4e57f1fb2e35c02005cba9a737f (diff)
parent75d089d12a66a8662d888ff60a9eaea230fed53e (diff)
downloadop-kernel-dev-50c0587eedc15235144216f2d2a5bd2a85e03289.zip
op-kernel-dev-50c0587eedc15235144216f2d2a5bd2a85e03289.tar.gz
Merge branch 'linus' into x86/asm, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'fs/dcache.c')
-rw-r--r--fs/dcache.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/dcache.c b/fs/dcache.c
index ad4a542..817c243 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -1636,7 +1636,7 @@ struct dentry *d_alloc(struct dentry * parent, const struct qstr *name)
struct dentry *dentry = __d_alloc(parent->d_sb, name);
if (!dentry)
return NULL;
-
+ dentry->d_flags |= DCACHE_RCUACCESS;
spin_lock(&parent->d_lock);
/*
* don't need child lock because it is not subject
@@ -2358,7 +2358,6 @@ static void __d_rehash(struct dentry * entry, struct hlist_bl_head *b)
{
BUG_ON(!d_unhashed(entry));
hlist_bl_lock(b);
- entry->d_flags |= DCACHE_RCUACCESS;
hlist_bl_add_head_rcu(&entry->d_hash, b);
hlist_bl_unlock(b);
}
@@ -2843,6 +2842,7 @@ static void __d_move(struct dentry *dentry, struct dentry *target,
/* ... and switch them in the tree */
if (IS_ROOT(dentry)) {
/* splicing a tree */
+ dentry->d_flags |= DCACHE_RCUACCESS;
dentry->d_parent = target->d_parent;
target->d_parent = target;
list_del_init(&target->d_child);
OpenPOWER on IntegriCloud