[Bug 213928] Reapers don't receive SIGCHLD when inheriting zombies
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Mon Oct 31 00:49:59 UTC 2016
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213928
Bug ID: 213928
Summary: Reapers don't receive SIGCHLD when inheriting zombies
Product: Base System
Version: 11.0-RELEASE
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: kern
Assignee: freebsd-bugs at FreeBSD.org
Reporter: muh.muhten at gmail.com
If a process acquires reaper status with procctl (or if it's init), then when
one of its children exits, its children, including zombies, get reparented.
If a zombie gets reparented, the reaper receives no notification, so unless
it's looping around a wait* for unspecified children, the zombie won't get
reaped until the reaper exits.
This doesn't seem to be a problem for init, which does indeed loop around
waitpid(-1,0,0). However, it makes it hard for a correct program which acquires
reaper status to do anything interesting, as such a program should not block on
anything but a wait* call unless it can guarantee that none of its descendants
will exit with zombies, as otherwise the system can accumulate zombies.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list