Re: inotify, new idea?

From: Richard Weinberger
Date: Sat May 24 2014 - 08:34:20 EST


Am 24.05.2014 09:52, schrieb Michael Kerrisk (man-pages):
> On 04/21/2014 10:42 AM, Richard Weinberger wrote:
>> Am 21.04.2014 09:24, schrieb Michael Kerrisk:
>>>> Does recursive monitoring even work with inotify?
>>>> Last time I've tried it did failed as soon I did a mkdir -p a/b/c/d because
>>>> mkdir() raced against the thread which installes the new watches.
>>>
>>> As I understand it, you have to program to deal with the races (rescan
>>> directories after adding watches). I recently did a lot of work
>>> updating the inotify(7) man page to discuss all the issues that I know
>>> of, and their remedies. If I missed anything, I'd appreciate a note on
>>> it, so that it can be added. See
>>> http://man7.org/linux/man-pages/man7/inotify.7.html#NOTES
>>
>> I'm aware of the rescan hack, but in my case it does not help
>> because my program must not miss any event.
>> Currently I'm using a fuse overlay filesystem to log everything.
>> Not perfect but works... :-)
>
> Richard,
>
> A late follow up question. How does your application deal with the
> event overflow problem (i.e., when you get a large number of events
> much faster than your application can deal with them?

The downside of the FUSE approach is that you have to intercept
every filesystem function.
This can be a performance issue.
But due to this design the overflow problem cannot happen as the
FUSE filesystem blocks until the event has been proceed.

Thanks,
//richard
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/