embed kqueu loop after fork (on freebsd)

Marc Lehmann schmorp at schmorp.de
Sun Feb 14 20:25:24 CET 2010

On Fri, Feb 05, 2010 at 02:54:59PM +0300, Vladimir Timofeev <vovkasm at gmail.com> wrote:
> I have a trouble to embed kqueue loop after doing loop_fork call in
> child process. Seems that after loop_fork ev don't listen embedded
> watcher.

Sorry for the long delay, and many thanks for the very good report and

This turned out to be a bug in ev_embed_stop, it's fixed in CVS.

If you want to patch your version of EV/libev, edit libev/ev.c, find
ev_embed_stop, and insert, at the very end of this function:

  ev_stop (EV_A_ (W)w);

That should fix your problem (verification would be appreciated :)

                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