Add QEMU_ARCH, which allows run scripts to specify which architecture
of QEMU should be used. This is useful on AArch64 when running with
KVM and running AArch32 tests. For those tests, we *don't* want to
select the 'arm' QEMU, as would have been selected, but rather the
$HOST ('aarch64') QEMU.

To use this new variable, simply ensure it's set prior to calling
search_qemu_binary().

Cc: Alexandru Elisei <[email protected]>
Signed-off-by: Andrew Jones <[email protected]>
---
 arm/run               | 4 ++++
 scripts/arch-run.bash | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/arm/run b/arm/run
index 0629b69a117c..28a0b4ad2729 100755
--- a/arm/run
+++ b/arm/run
@@ -13,6 +13,10 @@ processor="$PROCESSOR"
 ACCEL=$(get_qemu_accelerator) ||
        exit $?
 
+if [ "$ACCEL" = "kvm" ]; then
+       QEMU_ARCH=$HOST
+fi
+
 qemu=$(search_qemu_binary) ||
        exit $?
 
diff --git a/scripts/arch-run.bash b/scripts/arch-run.bash
index aae552321f9b..0dfaf017db0a 100644
--- a/scripts/arch-run.bash
+++ b/scripts/arch-run.bash
@@ -176,8 +176,10 @@ search_qemu_binary ()
        local save_path=$PATH
        local qemucmd qemu
 
+       : "${QEMU_ARCH:=$ARCH_NAME}"
+
        export PATH=$PATH:/usr/libexec
-       for qemucmd in ${QEMU:-qemu-system-$ARCH_NAME qemu-kvm}; do
+       for qemucmd in ${QEMU:-qemu-system-$QEMU_ARCH qemu-kvm}; do
                if $qemucmd --help 2>/dev/null | grep -q 'QEMU'; then
                        qemu="$qemucmd"
                        break
-- 
2.34.1

_______________________________________________
kvmarm mailing list
[email protected]
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

Reply via email to