Control: tags 722604 + patch udev 204-3 will work, with a hand-rolled kernel and no initramfs, if you do the following:
1. Enable CONFIG_DEVTMPFS=y. DEVTMPFS_MOUNT is not required. 2. Apply the following patch to /etc/init.d/udev. There are five parts to this patch: 1. Add the quotes to `mount -n -o "$dev_mount_options"` so that an empty $dev_mount_options string will not produce a syntax error. 2. Change from mounting tmpfs on /dev to devtmpfs 3. Check for the existence of devtmpfs in /proc/filesystems 4. Update error messages to reflect devtmpfs 5. Update comments and rename the "mount_tmpfs" shell function to "mount_devtmpfs" to reflect the preceding change. This part is purely cosmetic. --- /etc/init.d/udev.dpkg-dist 2013-09-17 18:42:58.000000000 -0400 +++ /etc/init.d/udev 2013-09-17 18:58:50.000000000 -0400 @@ -8,7 +8,7 @@ # Short-Description: Start udevd, populate /dev and load drivers. ### END INIT INFO -# we need to unmount /dev/pts/ and remount it later over the tmpfs +# we need to unmount /dev/pts/ and remount it later over the devtmpfs unmount_devpts() { if mountpoint -q /dev/pts/; then umount -n -l /dev/pts/ @@ -19,15 +19,15 @@ fi } -# mount a tmpfs over /dev, if somebody did not already do it -mount_tmpfs() { +# mount a devtmpfs over /dev, if somebody did not already do it +mount_devtmpfs() { if grep -E -q "^[^[:space:]]+ /dev (dev)?tmpfs" /proc/mounts; then - mount -n -o remount,${dev_mount_options} -t tmpfs tmpfs /dev + mount -n -o remount,${dev_mount_options} -t devtmpfs devtmpfs /dev return fi - if ! mount -n -o $dev_mount_options -t devtmpfs devtmpfs /dev; then - log_failure_msg "udev requires tmpfs support, not started" + if ! mount -n -o "$dev_mount_options" -t devtmpfs devtmpfs /dev; then + log_failure_msg "udev requires devtmpfs support, not started" log_end_msg 1 fi @@ -113,8 +113,8 @@ log_end_msg 1 fi -if ! grep -q '[[:space:]]tmpfs$' /proc/filesystems; then - log_failure_msg "udev requires tmpfs support, not started" +if ! grep -q '[[:space:]]devtmpfs$' /proc/filesystems; then + log_failure_msg "udev requires devtmpfs support, not started" log_end_msg 1 fi @@ -165,7 +165,7 @@ if [ -z "$TMPFS_MOUNTED" ]; then unmount_devpts - mount_tmpfs + mount_devtmpfs [ -d /proc/1 ] || mount -n /proc fi More changes would be desirable, such as actually using the $tmpfs_size variable, using $udev_root consistently, etc. I'd also really appreciate more details in the error message about running /etc/init.d/udev from a tty explaining exactly what will happen instead of what I expect. I also wonder if the test on that warn_if_interactive is correct. It skips the test if /dev/.udev exists or if /run/udev exists. Isn't that exactly the case that udev is already running, when you *do* want the test? And skip it if udev *isn't* running? - if [ ! -e "$udev_root/.udev/" -a ! -e "/run/udev/" ]; then + if [ -d "$udev_root/.udev/" -o -d /run/udev/ ]; then -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org