On Wed, Aug 01, 2007 at 07:52:33PM +0300, Timo Sirainen wrote:
On 1.8.2007, at 19.43, Quentin Garnier wrote:
FWIW, I've stopped using dovecot's kqueue code quite some time ago because it would leak one fd almost every login, leading to the
kind of situation you experience. I wish I had the time to debug that, but unfortunately...I thought this happened only with older NetBSDs. I tested it myself
once with 3.0 (or 3.1?) and I couldn't get it to leak.
Yes, older NetBSDs. What do you think OpenBSD is?
Nah, just kidding. I don't remember what tests I did at the time. I do remember that I couldn't reproduce it as easily as I wanted to, and the likely cause was that I was doing my tests on a kernel more recent than the 2.0 of my prod servers.
But yes, with some NetBSD versions it does leak one pipe per each
died process because kqueue doesn't notice that the pipe was closed
by the other side and give an event, or something like that.
Which does look like what is experienced here. Now, I don't know if we can locate easily what fix needs to be applied to OpenBSD.
-- Quentin Garnier - cube@cubidou.net - cube@NetBSD.org "You could have made it, spitting out benchmarks Owe it to yourself not to fail" Amplifico, Spitting Out Benchmarks, Hometakes Vol. 2, 2005.