[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [kvm-unit-tests PATCH v5 04/11] arm/run: introduce usingkvm
From: |
Alex Bennée |
Subject: |
[Qemu-devel] [kvm-unit-tests PATCH v5 04/11] arm/run: introduce usingkvm var and use it |
Date: |
Fri, 31 Jul 2015 16:53:54 +0100 |
This makes the script a little cleaner by only checking for KVM support
in one place. If KVM isn't available we can fall back to TCG emulation
and echo the fact to the screen rather than let QEMU complain.
Signed-off-by: Alex Bennée <address@hidden>
Reviewed-by: Andrew Jones <address@hidden>
---
v2
- rm redundant M= statement
v3
- make usingkvm use "yes"
- merge patches 3/4 into one
v4
- use single quotes consistently
- add r-b tag
---
arm/run | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/arm/run b/arm/run
index 6b42a2e..6b3d558 100755
--- a/arm/run
+++ b/arm/run
@@ -8,6 +8,15 @@ fi
source config.mak
processor="$PROCESSOR"
+# Default to using KVM if available and on the right ARM host
+if [ -c /dev/kvm ]; then
+ if [ "$HOST" = "arm" ] && [ "$ARCH" = "arm" ]; then
+ usingkvm=yes
+ elif [ "$HOST" = "aarch64" ]; then
+ usingkvm=yes
+ fi
+fi
+
qemu="${QEMU:-qemu-system-$ARCH_NAME}"
qpath=$(which $qemu 2>/dev/null)
@@ -22,6 +31,12 @@ if ! $qemu -machine '?' 2>&1 | grep 'ARM Virtual Machine' >
/dev/null; then
fi
M='-machine virt'
+if [ "$usingkvm" = "yes" ]; then
+ M+=',accel=kvm'
+else
+ echo "Running with TCG"
+ M+=',accel=tcg'
+fi
if ! $qemu $M -device '?' 2>&1 | grep virtconsole > /dev/null; then
echo "$qpath doesn't support virtio-console for chr-testdev. Exiting."
@@ -34,12 +49,11 @@ if $qemu $M -chardev testdev,id=id -initrd . 2>&1 \
exit 2
fi
-M='-machine virt,accel=kvm:tcg'
chr_testdev='-device virtio-serial-device'
chr_testdev+=' -device virtconsole,chardev=ctd -chardev testdev,id=ctd'
# arm64 must use '-cpu host' with kvm
-if [ "$(arch)" = "aarch64" ] && [ "$ARCH" = "arm64" ] && [ -c /dev/kvm ]; then
+if [ "$usingkvm" = "yes" ] && [ "$ARCH" = "arm64" ]; then
processor="host"
fi
--
2.5.0
- [Qemu-devel] [kvm-unit-tests PATCH v5 00/11] My current MTTCG tests, Alex Bennée, 2015/07/31
- [Qemu-devel] [kvm-unit-tests PATCH v5 01/11] arm/run: set indentation defaults for emacs, Alex Bennée, 2015/07/31
- [Qemu-devel] [kvm-unit-tests PATCH v5 02/11] README: add some CONTRIBUTING notes, Alex Bennée, 2015/07/31
- [Qemu-devel] [kvm-unit-tests PATCH v5 04/11] arm/run: introduce usingkvm var and use it,
Alex Bennée <=
- [Qemu-devel] [kvm-unit-tests PATCH v5 05/11] lib/printf: support the %u unsigned fmt field, Alex Bennée, 2015/07/31
- [Qemu-devel] [kvm-unit-tests PATCH v5 08/11] arm/unittests.cfg: add the tlbflush tests, Alex Bennée, 2015/07/31
- [Qemu-devel] [kvm-unit-tests PATCH v5 03/11] configure: emit HOST=$host to config.mak, Alex Bennée, 2015/07/31
- [Qemu-devel] [kvm-unit-tests PATCH v5 11/11] new: arm/barrier-test for memory barriers, Alex Bennée, 2015/07/31
- [Qemu-devel] [kvm-unit-tests PATCH v5 06/11] lib/arm: add flush_tlb_page mmu function, Alex Bennée, 2015/07/31
- [Qemu-devel] [kvm-unit-tests PATCH v5 07/11] new arm/tlbflush-test: TLB torture test, Alex Bennée, 2015/07/31