libuv/include
Ben Noordhuis 5c00a0ee33 unix: fix SIGCHLD waitpid() race in process.c
Before this commit, multiple event loops raced with each other when a
SIGCHLD signal was received.  More concretely, it was possible for
event loop A to consume waitpid() events that should have been
delivered to event loop B.

This commit addresses that by doing a linear scan over the list of
child processes.  An O(n) scan is not terribly efficient but the
actual performance impact is not measurable in a benchmark that spawns
rounds of several thousands instances of /bin/false.  For the time
being, this patch will suffice; we can always revisit it later.

Fixes #887.
2013-10-09 11:18:13 +02:00
..
pthread-fixes.h build: switch to autotools 2013-07-02 01:21:16 +02:00
stdint-msvc2008.h build: switch to autotools 2013-07-02 01:21:16 +02:00
tree.h build: switch to autotools 2013-07-02 01:21:16 +02:00
uv-bsd.h build: switch to autotools 2013-07-02 01:21:16 +02:00
uv-darwin.h fsevents: use shared FSEventStream 2013-08-22 16:35:13 +04:00
uv-errno.h unix, windows: return error codes directly 2013-07-07 09:51:00 +02:00
uv-linux.h linux,darwin,win: link-local IPv6 addresses 2013-07-04 15:43:20 +02:00
uv-sunos.h build: switch to autotools 2013-07-02 01:21:16 +02:00
uv-unix.h unix: fix SIGCHLD waitpid() race in process.c 2013-10-09 11:18:13 +02:00
uv-win.h unix, windows: add thread-local storage API 2013-08-25 15:51:07 +02:00
uv.h include: make uv_process_options_t.cwd const 2013-09-10 23:29:35 +02:00