Anomalous supervise behavior
Glenn Willen <[email protected]>
| Newsgroups | gmane.comp.djb.syslog |
|---|---|
| Message-ID | <[email protected]> |
First, I apologize if this is not the appropriate list for my question. I
couldn't find a list for daemontools in general, and my question relates to
usage of supervise in conjunction with multilog (though I'm not at all sure
that's relevant.)
I discovered this evening that supervise (a single supervise process),
supervising multilog, was chewing up my entire processor. Restarting supervise
did not help. [Deleting the 'supervise/' directory and restarting it ultimately
did fix the problem.] Strace showed that poll() claimed data was present on
fd6, but read() on fd6 was reading 0 bytes each time. I would like to know, for
personal curiosity and future reference, what could possibly cause this strange
behavior? Thanks in advance for your help.
[Below is the output of strace, showing two iterations of the loop in supervise.
Since I know this is going to get linewrap-mangled, I will compensate badly by
indenting line continuations.]
poll([{fd=3, events=POLLIN}, {fd=6, events=POLLIN, revents=POLLIN}], 2,
1000020) = 1
rt_sigprocmask(SIG_BLOCK, [CHLD], NULL, 8) = 0
read(3, 0xbffffdcf, 1) = -1 EAGAIN (Resource temporarily
unavailable)
wait4(-1, 0xbffffdc8, WNOHANG, NULL) = 0
read(6, "", 1) = 0
rt_sigprocmask(SIG_UNBLOCK, [CHLD], NULL, 8) = 0
gettimeofday({1079247065, 508374}, NULL) = 0
poll([{fd=3, events=POLLIN}, {fd=6, events=POLLIN, revents=POLLIN}], 2,
1000020) = 1
rt_sigprocmask(SIG_BLOCK, [CHLD], NULL, 8) = 0
read(3, 0xbffffdcf, 1) = -1 EAGAIN (Resource temporarily
unavailable)
wait4(-1, 0xbffffdc8, WNOHANG, NULL) = 0
read(6, "", 1) = 0
rt_sigprocmask(SIG_UNBLOCK, [CHLD], NULL, 8) = 0
gettimeofday({1079247065, 508913}, NULL) = 0
--
Glenn Willen | "Caution: do not look
[email protected] | directly into laser beam
http://www.nerdnet.org/ | with remaining eye."
----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.