diff options
author | Eric Paris <eparis@redhat.com> | 2009-08-28 12:50:47 -0400 |
---|---|---|
committer | Eric Paris <eparis@redhat.com> | 2009-08-28 12:51:14 -0400 |
commit | 750a8870fe4016ef3091fc97e084d58c613c2cc7 (patch) | |
tree | 7a33b8edb176465959abe9bd67a21a4498d93b6a /fs/notify/inotify/inotify_user.c | |
parent | 83cb10f0ef3c96162be92339ccf8c0c9c9f2d13e (diff) | |
download | op-kernel-dev-750a8870fe4016ef3091fc97e084d58c613c2cc7.zip op-kernel-dev-750a8870fe4016ef3091fc97e084d58c613c2cc7.tar.gz |
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>
Diffstat (limited to 'fs/notify/inotify/inotify_user.c')
-rw-r--r-- | fs/notify/inotify/inotify_user.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/notify/inotify/inotify_user.c b/fs/notify/inotify/inotify_user.c index 6111670..dcd2040 100644 --- a/fs/notify/inotify/inotify_user.c +++ b/fs/notify/inotify/inotify_user.c @@ -591,6 +591,10 @@ retry: /* match the ref from fsnotify_init_markentry() */ fsnotify_put_mark(&tmp_ientry->fsn_entry); + /* if this mark added a new event update the group mask */ + if (mask & ~group->mask) + fsnotify_recalc_group_mask(group); + out_err: if (ret < 0) kmem_cache_free(inotify_inode_mark_cachep, tmp_ientry); |