[Ovirt-devel] [PATCH node] fix dracut plugin wildcard handling
Mike Burns
mburns at redhat.com
Fri Jul 29 18:32:58 UTC 2011
The plugin was breaking when a device with a wildcard was passed.
rhbz#725964
Signed-off-by: Mike Burns <mburns at redhat.com>
---
dracut/install | 1 +
dracut/ovirt-cleanup.sh | 8 ++++----
scripts/ovirt-boot-functions | 2 +-
3 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/dracut/install b/dracut/install
index f3f2f07..1832b89 100755
--- a/dracut/install
+++ b/dracut/install
@@ -1,6 +1,7 @@
#!/bin/bash
inst yes
+inst head
inst_hook pre-pivot 01 "$moddir/ovirt-cleanup.sh"
inst_simple "$moddir/ovirt-boot-functions" /sbin/ovirt-boot-functions
diff --git a/dracut/ovirt-cleanup.sh b/dracut/ovirt-cleanup.sh
index 775bcf8..a6762cf 100755
--- a/dracut/ovirt-cleanup.sh
+++ b/dracut/ovirt-cleanup.sh
@@ -34,9 +34,9 @@ fi
# Blank entry will result in getting first disk
if getarg storage_init; then
- storage_init=$(getarg storage_init)
+ storage_init="$(sed -r 's/^.*storage_init=([^ ]*) .*$/\1/' /proc/cmdline)"
elif getarg ovirt_init; then
- storage_init=$(getarg ovirt_init)
+ storage_init="$(sed -r 's/^.*ovirt_init=([^ ]*) .*$/\1/' /proc/cmdline)"
else
return 0
fi
@@ -49,13 +49,13 @@ fi
# would partition sda and sdb as part of HostVG and
# sdc and sdd as part of AppVG
# Since we only care which disks are being used, change to a single list
-storage_init=$(echo $storage_init | sed 's/;/,/')
+storage_init="$(echo "$storage_init" | sed 's/;/,/')"
oldIFS=$IFS
lvm pvscan 2>/dev/null
IFS=","
-for dev in $storage_init; do
+for dev in "$storage_init"; do
device=$(IFS=$oldIFS parse_disk_id "$dev")
echo "Wiping LVM from device: ${device}"
IFS=$oldIFS
diff --git a/scripts/ovirt-boot-functions b/scripts/ovirt-boot-functions
index 8d9cda6..c7e54af 100644
--- a/scripts/ovirt-boot-functions
+++ b/scripts/ovirt-boot-functions
@@ -128,7 +128,7 @@ parse_disk_id() {
serial=${i#:}
;;
/dev/*)
- disk="$(ls -1 "$i" 2>/dev/null | grep -m 1 "$dev")"
+ disk="$(ls -1 "$i" 2>/dev/null | head -n1)"
;;
esac
if [ -n "$bus" ]; then
--
1.7.4.4
More information about the ovirt-devel
mailing list