This patch intoduces a group specific mutex that is used to synchronize all group related data/tasks for which no dedicated lock exists yet. Signed-off-by: Lino Sanfilippo <LinoSanfilippo@xxxxxx> --- fs/notify/group.c | 1 + include/linux/fsnotify_backend.h | 1 + 2 files changed, 2 insertions(+), 0 deletions(-) Please apply this against commit 9f71741c75e5206e1fea72ddf2adf5661105444d of branch 'origin/for-next' from git.infradead.org/users/eparis/notify.git Eric, as you can see i chose to introduce a new mutex instead of using the notification_mutex since you may be right with you concerns about performance. I guess its ok since its what you preferred. diff --git a/fs/notify/group.c b/fs/notify/group.c index d309f38..cc341d3 100644 --- a/fs/notify/group.c +++ b/fs/notify/group.c @@ -90,6 +90,7 @@ struct fsnotify_group *fsnotify_alloc_group(const struct fsnotify_ops *ops) */ atomic_set(&group->num_marks, 1); + mutex_init(&group->mutex); mutex_init(&group->notification_mutex); INIT_LIST_HEAD(&group->notification_list); init_waitqueue_head(&group->notification_waitq); diff --git a/include/linux/fsnotify_backend.h b/include/linux/fsnotify_backend.h index add1351..6a3c660 100644 --- a/include/linux/fsnotify_backend.h +++ b/include/linux/fsnotify_backend.h @@ -125,6 +125,7 @@ struct fsnotify_group { const struct fsnotify_ops *ops; /* how this group handles things */ + struct mutex mutex; /* needed to send notification to userspace */ struct mutex notification_mutex; /* protect the notification_list */ struct list_head notification_list; /* list of event_holder this group needs to send to userspace */ -- 1.5.6.5 -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html