From Bugzilla Helper: User-Agent: Mozilla/5.0 Galeon/1.0.2 (X11; Linux i686; U;) Gecko/20011226 Description of problem: /etc/rc.d/rc.sysinit trys to unmount /initrd. However, if the initrd uses devfs, then this unmount fails because devfs is mounted at /initrd/dev. Since /initrd/dev can not be mounted until after chroot executes init in the initrd linuxrc script (following a call to pivot_root), /initrd/dev/must be unmounted by rc.sysinit. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. Make an initrd that supports devfs and have its linuxrc mount devfs at /dev. 2. Linuxrc executes pivot_root and "chroot ... init". 3. Rc.sysinit tries to unmount /initrd but fails because /initrd/dev is a mounted devfs. Actual Results: Unmount of /initrd by rc.sysinit fails. Additional info: Here is a patch that fixes this rc.sysinit bug: --- /tmp/rc.sysinit Sun Feb 10 14:36:23 2002 +++ /etc/rc.d/rc.sysinit Sun Feb 10 14:36:39 2002 @@ -54,6 +54,9 @@ # Unmount the initrd, if necessary if grep -q /initrd /proc/mounts ; then + if [ -e /initrd/dev/.devfsd ]; then + action $"Unmounting initrd devfs: " umount /initrd/dev + fi action $"Unmounting initrd: " umount /initrd /sbin/blockdev --flushbufs /dev/ram0 >/dev/null 2>&1 fi
Created attachment 45159 [details] An example linuxrc that supports devfs.
*** Bug 61771 has been marked as a duplicate of this bug. ***
devfs is not supported, but the code will be added in 6.63-1.