]> git.sesse.net Git - bcachefs-tools-debian/commitdiff
Fix the initramfs script
authorKent Overstreet <koverstreet@google.com>
Fri, 13 Jul 2012 07:52:52 +0000 (00:52 -0700)
committerKent Overstreet <koverstreet@google.com>
Fri, 13 Jul 2012 07:52:52 +0000 (00:52 -0700)
Makefile
initramfs [deleted file]
initramfs/hook [new file with mode: 0755]
initramfs/script [new file with mode: 0755]

index 8042c5d763bfeaa308e0eda88c0c2045ded986de..ffb66d2ddcee0c20599962f7bdd52272ce6282ac 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -5,10 +5,11 @@ CFLAGS+=-O2 -Wall -g
 all: make-bcache probe-bcache
 
 install: make-bcache probe-bcache
-       install -m0755 make-bcache $(DESTDIR)${PREFIX}/sbin/
-       install -m0755 probe-bcache $(DESTDIR)/sbin/
-       install -m0644 61-bcache.rules $(DESTDIR)/lib/udev/rules.d/
-       install -m0755 initramfs $(DESTDIR)/etc/initramfs-tools/scripts/local-premount/bcache-probe
+       install -m0755 make-bcache      $(DESTDIR)${PREFIX}/sbin/
+       install -m0755 probe-bcache     $(DESTDIR)/sbin/
+       install -m0644 61-bcache.rules  $(DESTDIR)/lib/udev/rules.d/
+       install -m0755 initramfs/script $(DESTDIR)/etc/initramfs-tools/scripts/init-premount/bcache
+       install -m0755 initramfs/hook   $(DESTDIR)/etc/initramfs-tools/hooks/bcache
        install -m0644 *.8 $(DESTDIR)${PREFIX}/share/man/man8
 #      install -m0755 bcache-test $(DESTDIR)${PREFIX}/sbin/
 
diff --git a/initramfs b/initramfs
deleted file mode 100644 (file)
index af191cd..0000000
--- a/initramfs
+++ /dev/null
@@ -1,9 +0,0 @@
-#!/bin/sh -e
-
-for i in `ls /sys/dev/block/`; do
-       DEV=/tmp/bcache_dev
-
-       mknod   $DEV b `echo $i|sed -e 's/:/ /'`
-       echo    $DEV > /sys/fs/bcache/register_quiet
-       rm      $DEV
-done
diff --git a/initramfs/hook b/initramfs/hook
new file mode 100755 (executable)
index 0000000..3c429d0
--- /dev/null
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+PREREQ="udev"
+
+prereqs()
+{
+       echo "$PREREQ"
+}
+
+case $1 in
+prereqs)
+       prereqs
+       exit 0
+       ;;
+esac
+
+. /usr/share/initramfs-tools/hook-functions
+
+copy_exec /bin/mknod
+manual_add_modules bcache
diff --git a/initramfs/script b/initramfs/script
new file mode 100755 (executable)
index 0000000..926d5d3
--- /dev/null
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+mountroot_fail()
+{
+       for i in `ls /dev/sd*`; do
+               echo    $i > /sys/fs/bcache/register_quiet
+       done
+
+#      for i in `ls /sys/dev/block/`; do
+#              DEV=/bcache_dev
+#
+#              mknod   $DEV b `echo $i|sed -e 's/:/ /'`
+#              echo    $DEV > /sys/fs/bcache/register_quiet
+#              rm      $DEV
+#      done
+}
+
+case $1 in
+prereqs)
+       exit 0
+       ;;
+mountfail)
+       mountroot_fail
+       exit 0
+       ;;
+esac
+
+. /scripts/functions
+
+add_mountroot_fail_hook "30-bcache"
+
+exit 0