SOURCES: udev-initramfs-bottom (NEW), udev-initramfs-hook (NEW), udev-initr...

baggins baggins at pld-linux.org
Tue Feb 24 15:11:19 CET 2009


Author: baggins                      Date: Tue Feb 24 14:11:19 2009 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- support for initramfs-tools

---- Files affected:
SOURCES:
   udev-initramfs-bottom (NONE -> 1.1)  (NEW), udev-initramfs-hook (NONE -> 1.1)  (NEW), udev-initramfs-premount (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/udev-initramfs-bottom
diff -u /dev/null SOURCES/udev-initramfs-bottom:1.1
--- /dev/null	Tue Feb 24 15:11:19 2009
+++ SOURCES/udev-initramfs-bottom	Tue Feb 24 15:11:12 2009
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+PREREQS=""
+
+prereqs() { echo "$PREREQS"; }
+
+case "$1" in
+    prereqs)
+    prereqs
+    exit 0
+    ;;
+esac
+
+# Stop udevd, we'll miss a few events while we run init, but we catch up
+for proc in /proc/[0-9]*; do
+    [ -x $proc/exe ] || continue
+    [ "$(readlink $proc/exe)" != /sbin/udevd ] || kill ${proc#/proc/}
+done
+
+# move the /dev tmpfs to the rootfs
+mount -n -o move /dev $rootmnt/dev
+
+# create a temporary symlink to the final /dev for other initramfs scripts
+nuke /dev
+ln -s $rootmnt/dev /dev

================================================================
Index: SOURCES/udev-initramfs-hook
diff -u /dev/null SOURCES/udev-initramfs-hook:1.1
--- /dev/null	Tue Feb 24 15:11:20 2009
+++ SOURCES/udev-initramfs-hook	Tue Feb 24 15:11:13 2009
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+PREREQS=""
+
+prereqs() { echo "$PREREQS"; }
+
+case "$1" in
+    prereqs)
+    prereqs
+    exit 0
+    ;;
+esac
+
+. /usr/share/initramfs-tools/hook-functions
+
+# udevd uses unix domain sockets for communication
+force_load unix
+
+cp -a /etc/udev/ $DESTDIR/etc/
+rm -f $DESTDIR/etc/udev/rules.d/75-cd-aliases-generator.rules
+if [ -e /etc/scsi_id.config ]; then
+  cp /etc/scsi_id.config $DESTDIR/etc/
+fi
+
+copy_exec /sbin/udevd      /sbin
+copy_exec /sbin/udevadm    /sbin
+
+mkdir -p $DESTDIR/lib/udev/
+for program in /lib/udev/*_id; do
+  copy_exec $program /lib/udev
+done

================================================================
Index: SOURCES/udev-initramfs-premount
diff -u /dev/null SOURCES/udev-initramfs-premount:1.1
--- /dev/null	Tue Feb 24 15:11:20 2009
+++ SOURCES/udev-initramfs-premount	Tue Feb 24 15:11:13 2009
@@ -0,0 +1,36 @@
+#!/bin/sh -e
+
+PREREQS=""
+
+prereqs() { echo "$PREREQS"; }
+
+case "$1" in
+    prereqs)
+    prereqs
+    exit 0
+    ;;
+esac
+
+echo > /sys/kernel/uevent_helper
+
+mkdir -p /dev/.udev/db/
+udevd --daemon
+
+mkdir -p /dev/.udev/queue/ /dev/.udev/rules.d/
+udevadm trigger
+udevadm settle || true
+
+# If the rootdelay parameter has been set, we wait a bit for devices
+# like usb/firewire disks to settle.
+if [ "$ROOTDELAY" ]; then
+	if [ -x /sbin/usplash_write ]; then
+		/sbin/usplash_write "TIMEOUT $(($ROOTDELAY + 5))"
+	fi
+	sleep $ROOTDELAY
+	if [ -x /sbin/usplash_write ]; then
+		/sbin/usplash_write "TIMEOUT 15"
+	fi
+fi
+
+# Leave udev running to process events that come in out-of-band (like USB
+# connections)
================================================================


More information about the pld-cvs-commit mailing list