]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] inotify: fix race between the kernel and user space
authorJohn McCutchan <ttb@tentacle.dhs.org>
Mon, 1 Aug 2005 15:00:45 +0000 (11:00 -0400)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 1 Aug 2005 16:16:53 +0000 (09:16 -0700)
commit85221fffce12d9278396b4f10124975040ae640d
tree3fc1fe1e0f40d673d9675a3db5b84ca00b81eaea
parent5ae0b51579aa4e831d4b3273758cc5e00203d15f
[PATCH] inotify: fix race between the kernel and user space

When you rm a watch, an IN_IGNORED event is sent down the event queue
with the watch descriptor that you just rm'd.

If you then add a watch you could get the ignored watch's wd and if you
haven't read the entire event queue, user space will think that it's
newly created watch was just ignored.

To avoid this problem we just use idr_get_new_above instead of
idr_get_new.

Signed-off-by: John McCutchan <ttb@tentacle.dhs.org>
Signed-off-by: Robert Love <rml@novell.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fs/inotify.c