summaryrefslogtreecommitdiff
path: root/init
diff options
context:
space:
mode:
authorEric Andersen2001-12-06 14:52:32 +0000
committerEric Andersen2001-12-06 14:52:32 +0000
commitb24d65659f193cd7497dfdae4d8aa1bc91dbf343 (patch)
tree430b543e3b98a9028f5c0435b1363b2256d26a24 /init
parent06656f363de87846086f03c5e12541a66637858e (diff)
downloadbusybox-b24d65659f193cd7497dfdae4d8aa1bc91dbf343.zip
busybox-b24d65659f193cd7497dfdae4d8aa1bc91dbf343.tar.gz
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
Diffstat (limited to 'init')
-rw-r--r--init/halt.c2
-rw-r--r--init/poweroff.c2
-rw-r--r--init/reboot.c2
3 files changed, 3 insertions, 3 deletions
diff --git a/init/halt.c b/init/halt.c
index 307c102..917de8b 100644
--- a/init/halt.c
+++ b/init/halt.c
@@ -28,7 +28,7 @@ extern int halt_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)
diff --git a/init/poweroff.c b/init/poweroff.c
index cec2d6d..d99b556 100644
--- a/init/poweroff.c
+++ b/init/poweroff.c
@@ -28,7 +28,7 @@ extern int poweroff_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)
diff --git a/init/reboot.c b/init/reboot.c
index a13d424..6f71536 100644
--- a/init/reboot.c
+++ b/init/reboot.c
@@ -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)