]> git.pld-linux.org Git - projects/geninitrd.git/commitdiff
Use only dmsetup with udev support
authorArtur Frysiak <artur@frysiak.net>
Sat, 3 Dec 2011 20:16:32 +0000 (20:16 +0000)
committerArtur Frysiak <artur@frysiak.net>
Sat, 3 Dec 2011 20:16:32 +0000 (20:16 +0000)
svn-id: @12432

mod-udev.sh

index 63fa61c242a2177a8fdb9839f9d6c538979274ff..ad64b1d7405510b8f7d64780d5bc750539da8b29 100644 (file)
@@ -53,11 +53,24 @@ initrd_gen_udev() {
        # initrd dedicated rules
        inst_rules 01-ignore.rules 59-persistent-storage.rules 61-persistent-storage.rules 11-dm.rules
 
+       local e
        for e in ata_id cdrom_id collect firmware scsi_id v4l_id; do
                inst_exec $initrd_dir/udev/$e /lib/udev/$e
        done
        inst_exec $initrd_dir/blkid /sbin/blkid
-       inst_exec $initrd_dir/dmsetup /sbin/dmsetup
+
+       local dir dmsetup
+       for dir in $initrd_dir /sbin; do
+               if [ "$($dir/dmsetup udevcookies 2>&1|grep -c 'Command not supported')" -eq 0 ]; then
+                       dmsetup=$dir/dmsetup
+                       break
+               fi
+       done
+       if [ -z "$dmsetup" ]; then
+               warn "Can't find dmsetup with udev support"
+       else
+               inst_exec $dmsetup /sbin/dmsetup
+       fi
 
        mount_dev
        mount_sys
This page took 0.039568 seconds and 4 git commands to generate.