------- You are receiving this mail because: -------
You are on the CC list for the bug.
http://bugs.exim.org/show_bug.cgi?id=972
--- Comment #7 from Simon Arlott <bugzilla.exim.simon@???> 2010-06-06 09:58:37 ---
(In reply to comment #6)
> Created an attachment (id=392)
--> (
http://bugs.exim.org/attachment.cgi?id=392) [details]
> exim_wait_tick() paranoia
This will loop longer than intended if the clock goes back at the wrong time. I
would impose a hard limit on the total duration of milliwait()s performed, or
give up immediately if the clock goes backwards. I also think the OS failing to
sleep until the requested time deserves a warning in the log.
> The other approach would be to sleep for *two* ticks, or two times the
> resolution we need, so that if there's a little jitter then we just rely on the
> jitter magnitude being << our resolution magnitude.
This doesn't solve the problem if the kernel is deciding to wake up early.
> I'm leaning towards just sleeping for twice the resolution; in the meantime,
> does this patch even fix the problem?
I couldn't reproduce the problem, so either the sleep duration was too short to
trigger the same issue (which I had with ~1 second sleeps), or the kernel has
been fixed since I encountered it.
Another option is to keep the last message id per process when receiving and
output an error message if the last id is reused, then increment it.
--
Configure bugmail:
http://bugs.exim.org/userprefs.cgi?tab=email