linux/fs/notify
Jan Kara 73cd3c33ab fsnotify: Avoid double locking in fsnotify_detach_from_object()
We lock object list lock in fsnotify_detach_from_object() twice - once
to detach mark and second time to recalculate mask. That is unnecessary
and later it will become problematic as we will free the connector as
soon as there is no mark in it. So move recalculation of fsnotify mask
into the same critical section that is detaching mark.

This also removes recalculation of child dentry flags from
fsnotify_detach_from_object(). That is however fine. Those marks will
get recalculated once some event happens on a child.

Reviewed-by: Miklos Szeredi <mszeredi@redhat.com>
Signed-off-by: Jan Kara <jack@suse.cz>
2017-04-10 17:37:35 +02:00
..
dnotify fsnotify: Move locking into fsnotify_recalc_mask() 2017-04-10 17:37:35 +02:00
fanotify fanotify: Move recalculation of inode / vfsmount mask under mark_mutex 2017-04-03 16:56:40 +02:00
inotify inotify: Remove inode pointers from debug messages 2017-04-03 16:56:34 +02:00
fdinfo.c fsnotify: Move object pointer to fsnotify_mark_connector 2017-04-10 17:37:35 +02:00
fdinfo.h fs: Convert show_fdinfo functions to void 2014-11-05 14:13:23 -05:00
fsnotify.c fsnotify: Move mark list head from object into dedicated structure 2017-04-10 17:37:34 +02:00
fsnotify.h fsnotify: Remove indirection from fsnotify_detach_mark() 2017-04-10 17:37:35 +02:00
group.c fsnotify: convert notification_mutex to a spinlock 2016-10-07 18:46:26 -07:00
inode_mark.c fsnotify: Remove indirection from fsnotify_detach_mark() 2017-04-10 17:37:35 +02:00
Kconfig rcu: Make SRCU optional by using CONFIG_SRCU 2015-01-06 11:04:29 -08:00
Makefile fs, notify: add procfs fdinfo helper 2012-12-17 17:15:28 -08:00
mark.c fsnotify: Avoid double locking in fsnotify_detach_from_object() 2017-04-10 17:37:35 +02:00
notification.c fsnotify: clean up spinlock assertions 2016-10-07 18:46:26 -07:00
vfsmount_mark.c fsnotify: Remove indirection from fsnotify_detach_mark() 2017-04-10 17:37:35 +02:00