I am having problems with the combination of initrd and devfs.
mkinitrd 3.3.9, hacked to build an ia64 initrd on ia32.
Kernel 2.4.18-ia64-020410, config extract.
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_BLK_DEV_INITRD=y
linuxrc commands:
insmod /lib/qla1280.o
echo Mounting /proc filesystem
mount -t proc /proc /proc
echo Creating root device
mkrootdev /dev/root
fails "mkrootdev: mknod failed: 17". devfs has already created
/dev/root as a symlink.
echo 0x0100 > /proc/sys/kernel/real-root-dev
echo Mounting root filesystem
mount --ro -t ext2 /dev/root /sysroot
fails "mount: error 16 mounting ext2" because /dev/root is wrong.
pivot_root /sysroot /sysroot/initrd
fails "pivotroot: pivot_root(/sysroot,/sysroot/initrd) failed: 2"
By removing /dev/root immediately before mkrootdev /dev/root I can get
past those errors, even pivot_root works. But then it gets nasty :-
INIT: version 2.78 booting
Welcome to Red Hat Linux
Press 'I' to enter interactive startup.
Mounting proc filesystem: [ OK ]
Unmounting initrd: umount: /initrd: device is busy
Because of this mount - none /initrd/dev devfs rw 0 0
If I boot with initrd and devfs=nomount it goes through initrd
processing and successfully umounts initrd, but then fails "Remounting
root filesystem in read-write mode: mount: no such partition found".
/proc/mounts contains
/dev/root / ext2 ro 0 0
What is the correct way of using initrd and devfs together?
devfsd.conf is not the answer, initrd does not run the devfsd daemon.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/