ev_stat inotify implementation might miss events

Marc Lehmann schmorp at schmorp.de
Mon Jan 25 19:39:59 CET 2010

On Mon, Jan 25, 2010 at 04:13:50PM +0100, Yoann Vandoorselaere <yoann.v at prelude-ids.com> wrote:
> The ev_stat inotify backend can miss files events while the ev_stat
> notification callback execute. If additional changes occurs before the
> main libev loop resume, the events will be lost.

Could you explain this in more detail? What events did you get, what did
you expect instead?

Did you read the documentation about stat watchers? Naive use will "lose
events" and this is not a deficiency in libev, but in the naive usage.

> Additionally, could you detail why it is necessary to call infy_del() /
> infy_add() on the notified descriptor ?

libev needs to rearm inotify after a change, as the event might have
changed the path.

                The choice of a       Deliantra, the free code+content MORPG
      -----==-     _GNU_              http://www.deliantra.net
      ----==-- _       generation
      ---==---(_)__  __ ____  __      Marc Lehmann
      --==---/ / _ \/ // /\ \/ /      schmorp at schmorp.de
      -=====/_/_//_/\_,_/ /_/\_\

More information about the libev mailing list