From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751621AbaEXMY4 (ORCPT ); Sat, 24 May 2014 08:24:56 -0400 Received: from mail-we0-f172.google.com ([74.125.82.172]:45716 "EHLO mail-we0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751586AbaEXMYx (ORCPT ); Sat, 24 May 2014 08:24:53 -0400 Message-ID: <53804FC0.1010207@gmail.com> Date: Sat, 24 May 2014 09:52:32 +0200 From: "Michael Kerrisk (man-pages)" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 MIME-Version: 1.0 To: Richard Weinberger CC: mtk.manpages@gmail.com, Lennart Sorensen , Jos Huisken , Linux Kernel Subject: Re: inotify, new idea? References: <20140417212834.GC17769@csclub.uwaterloo.ca> <5354DA0B.2060204@nod.at> In-Reply-To: <5354DA0B.2060204@nod.at> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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? Cheers, Michael -- Michael Kerrisk Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/ Linux/UNIX System Programming Training: http://man7.org/training/