summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2016-05-29 17:49:56 (GMT)
committerAl Viro <viro@zeniv.linux.org.uk>2016-05-29 18:41:11 (GMT)
commit2853908a59603118f854b813da055c26257dfa4f (patch)
tree125c9bd6e38697fa6b9cf64f99882a60348c07f7
parent1a695a905c18548062509178b98bc91e67510864 (diff)
downloadlinux-2853908a59603118f854b813da055c26257dfa4f.tar.xz
undo "fs: allow d_instantiate to be called with negative parent dentry"
Background: spufs used to mangle the order in which it had been building dentry trees. It was broken in a lot of ways, but most of them required the right timing to trigger until an fsnotify change had added one more - the one that was always triggered. Unfortunately, insteading of fixing their long-standing bug the spufs folks had chosen to paper over the fsnotify trigger. Eventually said bug had been spotted and killed off, but the pointless check in fsnotify has remained, complete with the implication that one *could* do that kind of crap. Again, a parent of any dentry should always be positive. Any code can rely upon that and anything violating that assert is a bug, *not* something to be accomodated. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--include/linux/fsnotify_backend.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/fsnotify_backend.h b/include/linux/fsnotify_backend.h
index 29f9175..d188a10 100644
--- a/include/linux/fsnotify_backend.h
+++ b/include/linux/fsnotify_backend.h
@@ -281,7 +281,7 @@ static inline void __fsnotify_update_dcache_flags(struct dentry *dentry)
* us with the new state.
*/
parent = dentry->d_parent;
- if (parent->d_inode && fsnotify_inode_watches_children(parent->d_inode))
+ if (fsnotify_inode_watches_children(parent->d_inode))
dentry->d_flags |= DCACHE_FSNOTIFY_PARENT_WATCHED;
else
dentry->d_flags &= ~DCACHE_FSNOTIFY_PARENT_WATCHED;