diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-07 17:36:57 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-07 17:36:57 -0400 |
commit | dc0755cdb16cb129c4054c85d62bce83a18bcbcf (patch) | |
tree | 17f585ce18524ec029cb1169cdba256c83288101 /fs/gfs2 | |
parent | c7c4591db64dbd1e504bc4e2806d7ef290a3c81b (diff) | |
parent | f0d3b3ded999daae1cf451d051018038c0a05bae (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull vfs pile 2 (of many) from Al Viro:
"Mostly Miklos' series this time"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
constify dcache.c inlined helpers where possible
fuse: drop dentry on failed revalidate
fuse: clean up return in fuse_dentry_revalidate()
fuse: use d_materialise_unique()
sysfs: use check_submounts_and_drop()
nfs: use check_submounts_and_drop()
gfs2: use check_submounts_and_drop()
afs: use check_submounts_and_drop()
vfs: check unlinked ancestors before mount
vfs: check submounts and drop atomically
vfs: add d_walk()
vfs: restructure d_genocide()
Diffstat (limited to 'fs/gfs2')
-rw-r--r-- | fs/gfs2/dentry.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/fs/gfs2/dentry.c b/fs/gfs2/dentry.c index f2448ab2aac5..d3a5d4e29ba5 100644 --- a/fs/gfs2/dentry.c +++ b/fs/gfs2/dentry.c | |||
@@ -93,12 +93,9 @@ invalid_gunlock: | |||
93 | if (!had_lock) | 93 | if (!had_lock) |
94 | gfs2_glock_dq_uninit(&d_gh); | 94 | gfs2_glock_dq_uninit(&d_gh); |
95 | invalid: | 95 | invalid: |
96 | if (inode && S_ISDIR(inode->i_mode)) { | 96 | if (check_submounts_and_drop(dentry) != 0) |
97 | if (have_submounts(dentry)) | 97 | goto valid; |
98 | goto valid; | 98 | |
99 | shrink_dcache_parent(dentry); | ||
100 | } | ||
101 | d_drop(dentry); | ||
102 | dput(parent); | 99 | dput(parent); |
103 | return 0; | 100 | return 0; |
104 | 101 | ||