diff options
| author | Eric Andersen <andersen@codepoet.org> | 2003-07-26 06:25:12 +0000 |
|---|---|---|
| committer | Eric Andersen <andersen@codepoet.org> | 2003-07-26 06:25:12 +0000 |
| commit | d5868c169214b2be273c8a5ecb0a30ff1368faba (patch) | |
| tree | d3e31624a7ce8a5c4201503896f6efddb421bba9 | |
| parent | f231c72630e99c3b3d9eb867baef298a28e46f87 (diff) | |
| download | busybox-w32-d5868c169214b2be273c8a5ecb0a30ff1368faba.tar.gz busybox-w32-d5868c169214b2be273c8a5ecb0a30ff1368faba.tar.bz2 busybox-w32-d5868c169214b2be273c8a5ecb0a30ff1368faba.zip | |
Patch from Thomas Gleixner to reap any zombie processes that are
reparented to init...
| -rw-r--r-- | init/init.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/init/init.c b/init/init.c index 657bad6cd..7e24eacdd 100644 --- a/init/init.c +++ b/init/init.c | |||
| @@ -825,6 +825,13 @@ static void cont_handler(int sig) | |||
| 825 | got_cont = 1; | 825 | got_cont = 1; |
| 826 | } | 826 | } |
| 827 | 827 | ||
| 828 | /* Reap any zombie processes that are reparented to init */ | ||
| 829 | static void child_handler(int sig) | ||
| 830 | { | ||
| 831 | int status; | ||
| 832 | while ( wait3(&status, WNOHANG, NULL) > 0 ); | ||
| 833 | } | ||
| 834 | |||
| 828 | #endif /* ! DEBUG_INIT */ | 835 | #endif /* ! DEBUG_INIT */ |
| 829 | 836 | ||
| 830 | static void new_init_action(int action, char *command, const char *cons) | 837 | static void new_init_action(int action, char *command, const char *cons) |
| @@ -1065,6 +1072,7 @@ extern int init_main(int argc, char **argv) | |||
| 1065 | signal(SIGCONT, cont_handler); | 1072 | signal(SIGCONT, cont_handler); |
| 1066 | signal(SIGSTOP, stop_handler); | 1073 | signal(SIGSTOP, stop_handler); |
| 1067 | signal(SIGTSTP, stop_handler); | 1074 | signal(SIGTSTP, stop_handler); |
| 1075 | signal(SIGCHLD, child_handler); | ||
| 1068 | 1076 | ||
| 1069 | /* Turn off rebooting via CTL-ALT-DEL -- we get a | 1077 | /* Turn off rebooting via CTL-ALT-DEL -- we get a |
| 1070 | * SIGINT on CAD so we can shut things down gracefully... */ | 1078 | * SIGINT on CAD so we can shut things down gracefully... */ |
