Messages in this thread | | | Date | Mon, 26 May 2014 08:06:29 +0200 | From | "Michael Kerrisk (man-pages)" <> | Subject | Re: inotify, new idea? |
| |
On 05/24/2014 02:34 PM, Richard Weinberger wrote: > 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.
Ahh -- that clears things up for me. Thanks, Richard.
Cheers,
Michael
-- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/
| |