Teach 'init -q' that init's pid may not equal 1
No binary (build failed)
—
(log yok)
| @@ -963,7 +963,14 @@ extern int init_main(int argc, char **argv) | |
| if (argc > 1 && !strcmp(argv[1], "-q")) { | |
| - | kill(1, SIGHUP); |
| + | /* don't assume init's pid == 1 */ |
| + | long *pid = find_pid_by_name("init"); |
| + | if (!pid || *pid<=0) { |
| + | pid = find_pid_by_name("linuxrc"); |
| + | if (!pid || *pid<=0) |
| + | error_msg_and_die("no process killed"); |
| + | } |
| + | kill(*pid, SIGHUP); |
| exit(0); | |
| } | |