summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormaximilian attems <maks@debian.org>2005-12-29 10:30:39 +0100
committermaximilian attems <maks@debian.org>2005-12-29 10:30:39 +0100
commit0f9b079738bd9e63896735b80d1768e34fc0b8ea (patch)
tree80ed280620734c7b4dd1c4f5ebabcc07945596b8
parente0de055ba1a1c32acb70f92ec65bf23139b73b8f (diff)
downloadinitramfs-tools-0f9b079738bd9e63896735b80d1768e34fc0b8ea.tar.gz
initramfs-tools-0f9b079738bd9e63896735b80d1768e34fc0b8ea.zip
add hook ide depending on udev
loads ide-disk and ide-generic on all needed ide cases.
-rw-r--r--debian/changelog10
-rw-r--r--scripts/init-premount/ide38
2 files changed, 46 insertions, 2 deletions
diff --git a/debian/changelog b/debian/changelog
index b53ff18..e054662 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,14 @@
-initramfs-tools (0.45) unstable; urgency=low
+initramfs-tools (0.45) unstable; urgency=high
+
+ "Che mi sento di morir."
* Unset debug before calling init, confuses /etc/init.d/rc.
- -- maximilian attems <maks@sternwelten.at> Tue, 27 Dec 2005 19:12:31 +0100
+ * scripts/init-premount/ide: Load uncondionally for ide boots ide-generic
+ and also ide-disk, as udev ignores them. High urgency upload for rc bugs.
+ (Closes: #332824, #342925, #344754, #337045, #338406)
+
+ -- maximilian attems <maks@sternwelten.at> Thu, 29 Dec 2005 10:28:11 +0100
initramfs-tools (0.44) unstable; urgency=high
diff --git a/scripts/init-premount/ide b/scripts/init-premount/ide
new file mode 100644
index 0000000..03a3fdf
--- /dev/null
+++ b/scripts/init-premount/ide
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+PREREQ="udev"
+
+prereqs()
+{
+ echo "$PREREQ"
+}
+
+case $1 in
+# get pre-requisites
+prereqs)
+ prereqs
+ exit 0
+ ;;
+esac
+
+modprobe -q ide-generic
+
+[ -e /proc/ide ] || return
+
+for drive in /proc/ide/*; do
+ [ -e ${drive}/media ] || continue
+ # nothing to do if the device has already been took in charge
+ unit=${drive#/proc/ide/}
+ [ -d /sys/block/$unit ] && continue
+
+ read media < $drive/media
+ case "$media" in
+ disk) MODULE=ide-disk ;;
+ cdrom) MODULE=ide-cd ;;
+ tape) MODULE=ide-tape ;;
+ floppy) MODULE=ide-floppy ;;
+ *) MODULE=ide-generic ;;
+ esac
+
+ modprobe -q ${MODULE}
+done