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: [email protected]
Reporter: [email protected]
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.
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "[email protected]"