From: Hauke Mehrtens Date: Sun, 17 Apr 2016 13:24:30 +0000 (+0000) Subject: x86: fix platform_export_bootpart() for Xen virtual disks X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=8a7b28071fba84e297796c46d46e12b0967804e8;p=openwrt%2Fstaging%2Fwigyori.git x86: fix platform_export_bootpart() for Xen virtual disks Virtual disk devices in a Xen virtual machine (DomU) can be /dev/xvda, /dev/xvdb and so on with partitions like /dev/xdva1. Devices named like this where not considered before. This resulted in a non working sysupgrade, because the boot partition could not be found. Signed-off-by: Alexander Dahl Suggested-by: Matthias Schiffer Signed-off-by: Hauke Mehrtens SVN-Revision: 49190 --- diff --git a/target/linux/x86/base-files/lib/upgrade/platform.sh b/target/linux/x86/base-files/lib/upgrade/platform.sh index 86696aec04..c21f1a7e5f 100644 --- a/target/linux/x86/base-files/lib/upgrade/platform.sh +++ b/target/linux/x86/base-files/lib/upgrade/platform.sh @@ -17,7 +17,7 @@ platform_export_bootpart() { PARTUUID=[a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9][a-f0-9]-02) uuid="${disk#PARTUUID=}" uuid="${uuid%-02}" - for disk in /dev/[hsv]d[a-z]; do + for disk in /dev/[hsv]d[a-z] /dev/xvd[a-z]; do set -- $(dd if=$disk bs=1 skip=440 count=4 2>/dev/null | hexdump -v -e '4/1 "%02x "') if [ "$4$3$2$1" = "$uuid" ]; then export BOOTPART="${disk}1"