[BusyBox] bug#1133: /sbin/init order of operations that screws over devfs in linux 2.4.x

helo helo at neounix.com
Wed Mar 14 08:31:40 UTC 2001


Package: busybox
Version: 0.49
Severity: normal

(my severity rating: anoying and easy to fix :)

Ok, this would not be a problem without devfs, and that's why it hasn't been found until now.  I'll keep this simple.  When you run devfsd it makes a bunch of symbolic links in /dev pointing to the new-style device filenames, so that /dev/tty3 points to /dev/vc/3 and stuff.

The problem arises because busybox init checks for the existance of the virtual terminal (or serial port) it is opening before it runs the sysinit script, thus preventing devfsd from being run and thus making the check for file existance fail.

So what needs to happen?
in init.c on line 906, don't do a stat here. there is no reason to do one, and if you insist then make it simply a warning message and still add the entry to the actions list. Now in the run() function on line 435, this is the only place you need to do checking. the open will fail and the child process will exit if the device doesn't exist.

This is for the Sunrise Linux bootdisks, you can find info on the distribution at seculinux.hackersclub.com or sunrise.hackersclub.com (we're switching names right now). One of our main policies is to merge patches back into the source tree and not be like redhat by forking stuff. Hopefully this will be fixed soon.
Thanks,
  -helo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.busybox.net/pipermail/busybox/attachments/20010314/e12c9ce2/attachment-0002.htm 


More information about the busybox mailing list