However, both sysvinit's and BusyBox's kilall5 make a kill(-1, SIGSTOP) call before going through the PID list and selectively sending the requested signal (and I guess Linux does not deliver SIGSTOP to the process that contains the call, or it would be pointless), and make a kill(-1, SIGCONT) call when they are done, so I'm not sure if there's actually a race condition.
Right, I failed to mention that, sorry. It is true that killall5 doesn't have a real race condition... because it stops the world before killing a set of processes, and restarts the world afterwards. This is clearly not something I want to use on systems I manage, even if it technically accomplishes its goal. -- Laurent
