NOTE_TRACK, EVFILT_PROC, kqueue, and subreapers

Jilles Tjoelker jilles at stack.nl
Sun Dec 11 12:46:41 UTC 2016


On Thu, Dec 08, 2016 at 08:23:29PM +0000, Jonathan de Boyne Pollard wrote:
> Martin "eto" Misuth:
> > I think that might be the reason why my PID1 s6-svscan on FreeBSD is 
> > accumulating zombies sometimes (seems like it is affected by dead 
> > descendants of ssh and my experiments). [...]
> > Anyway as you are probably much closer to FreeBSD team than I am, [...]

> I'm not.  You have the same access as I and the rest of the world have.

> For what it's worth, I've seen similar behaviour with zombies lying 
> around.  If we can nail it down you can file a kernel bug report.

> Have you checked that you aren't getting a NOTE_EXIT?

As reported in https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213928
reapers do not receive SIGCHLD when inheriting zombies, although they do
receive SIGCHLD when an inherited descendant process later terminates
and are awakened when in a wait call for a matching process. This should
probably be fixed.

NOTE_TRACK has the inherent problem of what to do when NOTE_TRACKERR
happens and has problems with process ID reuse, so it seems better to
use reaper instead of it.

-- 
Jilles Tjoelker


More information about the freebsd-hackers mailing list