inotify: fix inotify oneshot support
authorEric Paris <eparis@redhat.com>
Wed, 28 Jul 2010 14:18:37 +0000 (10:18 -0400)
committerEric Paris <eparis@redhat.com>
Wed, 28 Jul 2010 14:18:48 +0000 (10:18 -0400)
During the large inotify rewrite to fsnotify I completely dropped support
for IN_ONESHOT.  Reimplement that support.

Signed-off-by: Eric Paris <eparis@redhat.com>
fs/notify/inotify/inotify_fsnotify.c

index daa666a6e6c98c468849f23729376bde89dd29af..388a150c3d4a4fbda541b4667bc1af106b88b3a2 100644 (file)
@@ -126,6 +126,9 @@ static int inotify_handle_event(struct fsnotify_group *group, struct fsnotify_ev
                        ret = 0;
        }
 
+       if (fsn_mark->mask & IN_ONESHOT)
+               fsnotify_destroy_mark(fsn_mark);
+
        /*
         * If we hold the fsn_mark until after the event is on the queue
         * IN_IGNORED won't be able to pass this event in the queue