If find_pid_by_name() had an error, it was returning -1, but storing
that into a pid_t, which is unsigned on a number archs. Furthermore, find_pid_by_name() would _never_ return an error if the intended proces was "init", but instead would return 1, meaning we would fail to work on 2.4.x kernels running an initrd... -Erik
This commit is contained in:
@ -28,7 +28,7 @@ extern int reboot_main(int argc, char **argv)
|
||||
{
|
||||
#ifdef CONFIG_FEATURE_INITRD
|
||||
/* don't assume init's pid == 1 */
|
||||
pid_t *pid = find_pid_by_name("init");
|
||||
long *pid = find_pid_by_name("init");
|
||||
if (!pid || *pid<=0) {
|
||||
pid = find_pid_by_name("linuxrc");
|
||||
if (!pid || *pid<=0)
|
||||
|
Reference in New Issue
Block a user