2 # geninitrd mod: bcache
4 # http://bcache.evilpiepirate.org/
5 USE_BCACHE=${USE_BCACHE:-yes}
7 # setup geninitrd module
10 if [ ! -d /sys/fs/bcache ]; then
14 if [ ! -x /lib/udev/bcache-register ]; then
19 # find modules for $devpath
20 # @param $devpath device to be examined
22 find_modules_bcache() {
23 if ! is_yes "$USE_BCACHE"; then
28 local dev=${devpath#/dev/}
29 local slavedir=/sys/block/$dev/slaves
31 if [ ! -d $slavedir ]; then
32 die "Cannot inspect $slavedir for $devpath"
35 for dev in $slavedir/*; do
37 find_modules_for_devpath /dev/$dev
43 # generate initrd fragment
46 if ! is_yes "$USE_BCACHE"; then
50 verbose "Adding bcache support to initrd"
52 inst_rules 69-bcache.rules
53 inst_exec /lib/udev/bcache-register /lib/udev