Submitted By: Mario Fetka (mario dot fetka at gmail dot com) Date: 2010-10-29 Initial Package Version: 3.4.10.907 Origin: gentoo busybox mdev-start.sh and me Upstream Status: unknown Description: create missing dev entries diff -Naur genkernel-3.4.10.907.orig/defaults/initrd.scripts genkernel-3.4.10.907/defaults/initrd.scripts --- genkernel-3.4.10.907.orig/defaults/initrd.scripts 2010-10-29 16:11:03.765695917 +0000 +++ genkernel-3.4.10.907/defaults/initrd.scripts 2010-10-29 21:04:38.295553684 +0000 @@ -284,9 +284,56 @@ /bin/ash } +seed_chroot_dev() +{ + # Seed /dev with some things that we know we need + + # creating /dev/console and /dev/tty1 to be able to write + # to $CONSOLE with/without bootsplash before mdev creates it + [ -c ${CDROOT}/dev/console ] || mknod ${CDROOT}/dev/console c 5 1 + [ -c ${CDROOT}/dev/tty1 ] || mknod ${CDROOT}/dev/tty1 c 4 1 + + # udevd will dup its stdin/stdout/stderr to /dev/null + # and we do not want a file which gets buffered in ram + [ -c ${CDROOT}/dev/null ] || mknod ${CDROOT}/dev/null c 1 3 + + [ -c ${CDROOT}/dev/initctl ] || mknod ${CDROOT}/dev/initctl p +} + +seed_dev() +{ + # Seed /dev with some things that we know we need + + # creating /dev/console and /dev/tty1 to be able to write + # to $CONSOLE with/without bootsplash before mdev creates it + [ -c /dev/console ] || mknod /dev/console c 5 1 + [ -c /dev/tty1 ] || mknod /dev/tty1 c 4 1 + + # udevd will dup its stdin/stdout/stderr to /dev/null + # and we do not want a file which gets buffered in ram + [ -c /dev/null ] || mknod /dev/null c 1 3 + + # copy over any persistant things + if [ -d /lib/mdev/devices ] ; then + cp -RPp /lib/mdev/devices/* /dev 2>/dev/null + fi + + # Not provided by sysfs but needed + ln -snf /proc/self/fd /dev/fd + ln -snf fd/0 /dev/stdin + ln -snf fd/1 /dev/stdout + ln -snf fd/2 /dev/stderr + [ -e /proc/kcore ] && ln -snf /proc/kcore /dev/core + + # Create problematic directories + mkdir -p /dev/pts /dev/shm +} + runmdev() { # busybox udev replacement mdev -s + # add missing dev entrys for nas devices without console + seed_dev } test_success() { @@ -1093,3 +1140,5 @@ USE_UNIONFS_NORMAL=0 fi } + + diff -Naur genkernel-3.4.10.907.orig/defaults/linuxrc genkernel-3.4.10.907/defaults/linuxrc --- genkernel-3.4.10.907.orig/defaults/linuxrc 2010-10-29 16:11:03.762695924 +0000 +++ genkernel-3.4.10.907/defaults/linuxrc 2010-10-29 20:16:22.138687468 +0000 @@ -731,6 +731,9 @@ verbose_kmsg +# create the missing dev entrys for the nas boxes +seed_chroot_dev + echo -ne "${GOOD}>>${NORMAL}${BOLD} Booting (initramfs)${NORMAL}" if [ ! -e "${CHROOT}/dev/console" ] || [ ! -e "${CHROOT}/dev/null" ] then