supervise broken on MacOS 10.4 (Tiger)
Rob Mayoff <[email protected]>
| Newsgroups | gmane.comp.djb.syslog |
|---|---|
| Message-ID | <[email protected]> |
This is a warning for anyone intending to use daemontools on MacOS
10.4 (aka "Tiger"). The implementation of poll in 10.4 is broken.
(MacOS 10.4 implements poll in the kernel; I believe earlier versions
used a userspace select wrapper.)
Specifically, POLLIN on a named fifo always returns POLLNVAL. I
have filed a bug report with Apple about this. The effect is that
supervise loops endlessly without sleeping, consuming all available
CPU time.
The workaround is to force daemontools to use select instead of poll.
The easiest way to accomplish that is by breaking the "trypoll" program,
for example by running this:
echo x >> /package/admin/daemontools-0.76/src/trypoll.c
Then recompile and reinstall.