+get_stable_devname() {
+
+ local _DEV="$1"
+ local i
+ declare -a _RES
+
+ # prefer SCSI over ATA over WWN over path
+ # do not use by-path
+
+ for i in $($ROOTCMD udevadm info -r --query=symlink "$_DEV"); do
+ if [[ "$i" =~ /by-id/scsi ]]; then
+ _RES[10]="$i"
+ elif [[ "$i" =~ /by-id/ata ]]; then
+ _RES[20]="$i"
+ elif [[ "$i" =~ /by-id/wwn ]]; then
+ _RES[99]="$i"
+ fi
+ done
+
+ echo "${_RES[@]::1}"
+}
+
+# handle /boot in lvm-on-md
+_bdev=$(readlink -f $BOOT_DEVICE)
+if [ "${_bdev%%-*}" = "/dev/dm" ]; then
+ BOOT_DEVICE=$( lvs --noheadings -o devices $BOOT_DEVICE | sed -e 's/^*\([^(]*\)(.*$/\1/' )
+fi