Patch from Thomas Gleixner to reap any zombie processes that are

reparented to init...
This commit is contained in:
Eric Andersen 2003-07-26 06:25:12 +00:00
parent f231c72630
commit d5868c1692

View File

@ -825,6 +825,13 @@ static void cont_handler(int sig)
got_cont = 1; got_cont = 1;
} }
/* Reap any zombie processes that are reparented to init */
static void child_handler(int sig)
{
int status;
while ( wait3(&status, WNOHANG, NULL) > 0 );
}
#endif /* ! DEBUG_INIT */ #endif /* ! DEBUG_INIT */
static void new_init_action(int action, char *command, const char *cons) static void new_init_action(int action, char *command, const char *cons)
@ -1065,6 +1072,7 @@ extern int init_main(int argc, char **argv)
signal(SIGCONT, cont_handler); signal(SIGCONT, cont_handler);
signal(SIGSTOP, stop_handler); signal(SIGSTOP, stop_handler);
signal(SIGTSTP, stop_handler); signal(SIGTSTP, stop_handler);
signal(SIGCHLD, child_handler);
/* Turn off rebooting via CTL-ALT-DEL -- we get a /* Turn off rebooting via CTL-ALT-DEL -- we get a
* SIGINT on CAD so we can shut things down gracefully... */ * SIGINT on CAD so we can shut things down gracefully... */