From: hauke Date: Sun, 17 Apr 2016 13:24:30 +0000 (+0000) Subject: x86: fix platform_export_bootpart() for Xen virtual disks X-Git-Url: https://git.archive.openwrt.org/?p=openwrt.git;a=commitdiff_plain;h=638dd75554baf729be2f52b353edcf6fc63cbbd9 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@49190 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- 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"