From ced35688d263e575eec75ffee6a54238cd2a1f17 Mon Sep 17 00:00:00 2001 From: Neil Horman Date: Wed, 27 Aug 2008 11:26:34 +0000 Subject: [PATCH] Resolves: bz 455998 --- kexec-tools.spec | 2 +- mkdumprd | 30 ++++++++++++++++++++++-------- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/kexec-tools.spec b/kexec-tools.spec index 2f1a6ec..d743de0 100644 --- a/kexec-tools.spec +++ b/kexec-tools.spec @@ -265,7 +265,7 @@ done %changelog -* Web Aug 27 2008 Neil Horman - 1.102pre-16 +* Wed Aug 27 2008 Neil Horman - 1.102pre-16 - Fix mkdumprd to properly use UUID/LABEL search (bz 455998) * Tue Aug 5 2008 Tom "spot" Callaway - 1.102pre-15 diff --git a/mkdumprd b/mkdumprd index 3c6c14e..06bb639 100644 --- a/mkdumprd +++ b/mkdumprd @@ -383,13 +383,30 @@ handlelvordev() { *) vg_list="$vg_list $vg" for device in `vgdisplay -v $vg 2>/dev/null | sed -n 's/PV Name//p'`; do - echo $device | sed -e's/\/dev\///' -e's/[0-9]\+//' >> $TMPDISKLIST + IS_UUID=`echo $device | grep UUID` + IS_LABEL=`echo $device | grep UUID` + if [ -n "$IS_UUID" -o -n "$IS_LABEL" ] + then + devname=`findfs $device` + else + devmame=$device + fi + echo $devname | sed -e's/\/dev\///' -e's/[0-9]\+//' >> $TMPDISKLIST findstoragedriver ${device##/dev/} done ;; esac else - echo $1 | sed -e's/\/dev\///' -e's/[0-9]\+//' >> $TMPDISKLIST + IS_UUID=`echo $1 | grep UUID` + IS_LABEL=`echo $1 | grep UUID` + if [ -n "$IS_UUID" -o -n "$IS_LABEL" ] + then + devname=`findfs $1` + else + devmame=$1 + fi + + echo $devname | sed -e's/\/dev\///' -e's/[0-9]\+//' >> $TMPDISKLIST findstoragedriver ${1##/dev/} fi } @@ -748,18 +765,15 @@ if [ "x$PROBE" == "xyes" ]; then rootdev=$dev fi fi + elif echo $rootdev | cut -c1-6 | grep -q "UUID=" ; then + vecho "Found root device $dev for $rootdev" + rootdev=`/sbin/findfs $rootdev | sed -e's/\(.*\/\)\(.*$\)/\2/' -e's/[0-9]\+//'` else rootopts=$(echo $rootopts | sed -e 's/^r[ow],//' -e 's/,r[ow],$//' -e 's/,r[ow],/,/' \ -e 's/^r[ow]$/defaults/' -e 's/$/,ro/') fi [ "$rootfs" != "nfs" ] && handlelvordev $rootdev - # find the first swap dev which would get used for swsusp - swsuspdev=$(awk '/^[ \t]*[^#]/ { if ($3 == "swap") { print $1; }}' $fstab \ - | head -n 1) - if ! echo $swsuspdev | cut -c1-6 | grep -q "LABEL=" ; then - handlelvordev $swsuspdev - fi fi # If we use LVM or dm-based raid, include dm-mod