aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Paris <eparis@redhat.com>2009-08-28 12:50:47 -0400
committerEric Paris <eparis@redhat.com>2009-08-28 12:51:14 -0400
commit750a8870fe4016ef3091fc97e084d58c613c2cc7 (patch)
tree7a33b8edb176465959abe9bd67a21a4498d93b6a
parent83cb10f0ef3c96162be92339ccf8c0c9c9f2d13e (diff)
inotify: update the group mask on mark addition
Seperating the addition and update of marks in inotify resulted in a regression in that inotify never gets events. The inotify group mask is always 0. This mask should be updated any time a new mark is added. Signed-off-by: Eric Paris <eparis@redhat.com>
-rw-r--r--fs/notify/inotify/inotify_user.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/notify/inotify/inotify_user.c b/fs/notify/inotify/inotify_user.c
index 6111670b2573..dcd2040d330c 100644
--- a/fs/notify/inotify/inotify_user.c
+++ b/fs/notify/inotify/inotify_user.c
@@ -591,6 +591,10 @@ retry:
591 /* match the ref from fsnotify_init_markentry() */ 591 /* match the ref from fsnotify_init_markentry() */
592 fsnotify_put_mark(&tmp_ientry->fsn_entry); 592 fsnotify_put_mark(&tmp_ientry->fsn_entry);
593 593
594 /* if this mark added a new event update the group mask */
595 if (mask & ~group->mask)
596 fsnotify_recalc_group_mask(group);
597
594out_err: 598out_err:
595 if (ret < 0) 599 if (ret < 0)
596 kmem_cache_free(inotify_inode_mark_cachep, tmp_ientry); 600 kmem_cache_free(inotify_inode_mark_cachep, tmp_ientry);