diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2016-05-29 20:49:56 +0300 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2016-05-29 21:41:11 +0300 |
commit | 2853908a59603118f854b813da055c26257dfa4f (patch) | |
tree | 125c9bd6e38697fa6b9cf64f99882a60348c07f7 /include/linux/fsnotify_backend.h | |
parent | 1a695a905c18548062509178b98bc91e67510864 (diff) | |
download | linux-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>
Diffstat (limited to 'include/linux/fsnotify_backend.h')
-rw-r--r-- | include/linux/fsnotify_backend.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/fsnotify_backend.h b/include/linux/fsnotify_backend.h index 29f917517299..d188a107c562 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; |