Hi, I am having some problems with POLLHUP events arriving a substantial amount of time after the event taking place.
Process dispatcher (qmail-lspawn, part of the qmail MTA) communicates with its children (qmail-local) via pipes. The main loop is essentially a select(), waiting for pipe close events. Despite the children exiting one after another, SIGCHLD handler doing its job, there is no pollsys wake up event firing. Only after a minute or two, when some other qmail-locals terminate, there is a burst of descriptors being reported by pollsys. Using a select() with a short timeout makes no difference, the process enters the select() several times before getting the fd burst. This leads to stalls, with qmail-lspawn waiting for processes terminated some time ago. What bit of information am I missing? Is this kind of select()/pollsys behaviour to be expected? Thanks. This message posted from opensolaris.org _______________________________________________ opensolaris-code mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/opensolaris-code
