Loading fs/dcache.c +4 −4 Original line number Diff line number Diff line Loading @@ -1769,7 +1769,7 @@ static void __d_instantiate(struct dentry *dentry, struct inode *inode) raw_write_seqcount_begin(&dentry->d_seq); __d_set_inode_and_type(dentry, inode, add_flags); raw_write_seqcount_end(&dentry->d_seq); __fsnotify_d_instantiate(dentry); fsnotify_update_flags(dentry); spin_unlock(&dentry->d_lock); } Loading Loading @@ -2563,7 +2563,7 @@ static inline void __d_add(struct dentry *dentry, struct inode *inode) raw_write_seqcount_begin(&dentry->d_seq); __d_set_inode_and_type(dentry, inode, add_flags); raw_write_seqcount_end(&dentry->d_seq); __fsnotify_d_instantiate(dentry); fsnotify_update_flags(dentry); } _d_rehash(dentry); if (dir) Loading Loading @@ -2853,8 +2853,8 @@ static void __d_move(struct dentry *dentry, struct dentry *target, list_move(&target->d_child, &target->d_parent->d_subdirs); list_move(&dentry->d_child, &dentry->d_parent->d_subdirs); if (exchange) fsnotify_d_move(target); fsnotify_d_move(dentry); fsnotify_update_flags(target); fsnotify_update_flags(dentry); } write_seqcount_end(&target->d_seq); Loading include/linux/fsnotify.h +0 −12 Original line number Diff line number Diff line Loading @@ -51,18 +51,6 @@ static inline int fsnotify_perm(struct file *file, int mask) return fsnotify(inode, fsnotify_mask, path, FSNOTIFY_EVENT_PATH, NULL, 0); } /* * fsnotify_d_move - dentry has been moved */ static inline void fsnotify_d_move(struct dentry *dentry) { /* * On move we need to update dentry->d_flags to indicate if the new parent * cares about events from this dentry. */ __fsnotify_update_dcache_flags(dentry); } /* * fsnotify_link_count - inode's link count changed */ Loading include/linux/fsnotify_backend.h +3 −17 Original line number Diff line number Diff line Loading @@ -267,10 +267,8 @@ static inline int fsnotify_inode_watches_children(struct inode *inode) * Update the dentry with a flag indicating the interest of its parent to receive * filesystem events when those events happens to this dentry->d_inode. */ static inline void __fsnotify_update_dcache_flags(struct dentry *dentry) static inline void fsnotify_update_flags(struct dentry *dentry) { struct dentry *parent; assert_spin_locked(&dentry->d_lock); /* Loading @@ -280,21 +278,12 @@ static inline void __fsnotify_update_dcache_flags(struct dentry *dentry) * find our entry, so it will spin until we complete here, and update * us with the new state. */ parent = dentry->d_parent; if (fsnotify_inode_watches_children(parent->d_inode)) if (fsnotify_inode_watches_children(dentry->d_parent->d_inode)) dentry->d_flags |= DCACHE_FSNOTIFY_PARENT_WATCHED; else dentry->d_flags &= ~DCACHE_FSNOTIFY_PARENT_WATCHED; } /* * fsnotify_d_instantiate - instantiate a dentry for inode */ static inline void __fsnotify_d_instantiate(struct dentry *dentry) { __fsnotify_update_dcache_flags(dentry); } /* called from fsnotify listeners, such as fanotify or dnotify */ /* create a new group */ Loading Loading @@ -386,10 +375,7 @@ static inline void __fsnotify_inode_delete(struct inode *inode) static inline void __fsnotify_vfsmount_delete(struct vfsmount *mnt) {} static inline void __fsnotify_update_dcache_flags(struct dentry *dentry) {} static inline void __fsnotify_d_instantiate(struct dentry *dentry) static inline void fsnotify_update_flags(struct dentry *dentry) {} static inline u32 fsnotify_get_cookie(void) Loading Loading
fs/dcache.c +4 −4 Original line number Diff line number Diff line Loading @@ -1769,7 +1769,7 @@ static void __d_instantiate(struct dentry *dentry, struct inode *inode) raw_write_seqcount_begin(&dentry->d_seq); __d_set_inode_and_type(dentry, inode, add_flags); raw_write_seqcount_end(&dentry->d_seq); __fsnotify_d_instantiate(dentry); fsnotify_update_flags(dentry); spin_unlock(&dentry->d_lock); } Loading Loading @@ -2563,7 +2563,7 @@ static inline void __d_add(struct dentry *dentry, struct inode *inode) raw_write_seqcount_begin(&dentry->d_seq); __d_set_inode_and_type(dentry, inode, add_flags); raw_write_seqcount_end(&dentry->d_seq); __fsnotify_d_instantiate(dentry); fsnotify_update_flags(dentry); } _d_rehash(dentry); if (dir) Loading Loading @@ -2853,8 +2853,8 @@ static void __d_move(struct dentry *dentry, struct dentry *target, list_move(&target->d_child, &target->d_parent->d_subdirs); list_move(&dentry->d_child, &dentry->d_parent->d_subdirs); if (exchange) fsnotify_d_move(target); fsnotify_d_move(dentry); fsnotify_update_flags(target); fsnotify_update_flags(dentry); } write_seqcount_end(&target->d_seq); Loading
include/linux/fsnotify.h +0 −12 Original line number Diff line number Diff line Loading @@ -51,18 +51,6 @@ static inline int fsnotify_perm(struct file *file, int mask) return fsnotify(inode, fsnotify_mask, path, FSNOTIFY_EVENT_PATH, NULL, 0); } /* * fsnotify_d_move - dentry has been moved */ static inline void fsnotify_d_move(struct dentry *dentry) { /* * On move we need to update dentry->d_flags to indicate if the new parent * cares about events from this dentry. */ __fsnotify_update_dcache_flags(dentry); } /* * fsnotify_link_count - inode's link count changed */ Loading
include/linux/fsnotify_backend.h +3 −17 Original line number Diff line number Diff line Loading @@ -267,10 +267,8 @@ static inline int fsnotify_inode_watches_children(struct inode *inode) * Update the dentry with a flag indicating the interest of its parent to receive * filesystem events when those events happens to this dentry->d_inode. */ static inline void __fsnotify_update_dcache_flags(struct dentry *dentry) static inline void fsnotify_update_flags(struct dentry *dentry) { struct dentry *parent; assert_spin_locked(&dentry->d_lock); /* Loading @@ -280,21 +278,12 @@ static inline void __fsnotify_update_dcache_flags(struct dentry *dentry) * find our entry, so it will spin until we complete here, and update * us with the new state. */ parent = dentry->d_parent; if (fsnotify_inode_watches_children(parent->d_inode)) if (fsnotify_inode_watches_children(dentry->d_parent->d_inode)) dentry->d_flags |= DCACHE_FSNOTIFY_PARENT_WATCHED; else dentry->d_flags &= ~DCACHE_FSNOTIFY_PARENT_WATCHED; } /* * fsnotify_d_instantiate - instantiate a dentry for inode */ static inline void __fsnotify_d_instantiate(struct dentry *dentry) { __fsnotify_update_dcache_flags(dentry); } /* called from fsnotify listeners, such as fanotify or dnotify */ /* create a new group */ Loading Loading @@ -386,10 +375,7 @@ static inline void __fsnotify_inode_delete(struct inode *inode) static inline void __fsnotify_vfsmount_delete(struct vfsmount *mnt) {} static inline void __fsnotify_update_dcache_flags(struct dentry *dentry) {} static inline void __fsnotify_d_instantiate(struct dentry *dentry) static inline void fsnotify_update_flags(struct dentry *dentry) {} static inline u32 fsnotify_get_cookie(void) Loading