From: Lihao Liang <liangli...@huawei.com>

This commit adds support of the qemu command qemu-system-aarch64
to rcutorture.

Signed-off-by: Lihao Liang <liangli...@huawei.com>
---
This commit is against RCU's git tree rcu/dev branch

commit 505b61b2ec1d ("EXP: rcu: Add debugging info to other assertion")

Note that the max CPUs supported by qemu machine 'virt' is 8 so the value of
CONFIG_NR_CPUS in some test configuration files needs to be adjusted.

 tools/testing/selftests/rcutorture/bin/functions.sh | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/rcutorture/bin/functions.sh 
b/tools/testing/selftests/rcutorture/bin/functions.sh
index 07a1377..0541d10 100644
--- a/tools/testing/selftests/rcutorture/bin/functions.sh
+++ b/tools/testing/selftests/rcutorture/bin/functions.sh
@@ -136,6 +136,9 @@ identify_boot_image () {
                qemu-system-x86_64|qemu-system-i386)
                        echo arch/x86/boot/bzImage
                        ;;
+               qemu-system-aarch64)
+                       echo arch/arm64/boot/Image
+                       ;;
                *)
                        echo vmlinux
                        ;;
@@ -158,6 +161,9 @@ identify_qemu () {
        elif echo $u | grep -q "Intel 80386"
        then
                echo qemu-system-i386
+       elif echo $u | grep -q aarch64
+       then
+               echo qemu-system-aarch64
        elif uname -a | grep -q ppc64
        then
                echo qemu-system-ppc64
@@ -176,16 +182,20 @@ identify_qemu () {
 # Output arguments for the qemu "-append" string based on CPU type
 # and the TORTURE_QEMU_INTERACTIVE environment variable.
 identify_qemu_append () {
+       local console=ttyS0
        case "$1" in
        qemu-system-x86_64|qemu-system-i386)
                echo noapic selinux=0 initcall_debug debug
                ;;
+       qemu-system-aarch64)
+               console=ttyAMA0
+               ;;
        esac
        if test -n "$TORTURE_QEMU_INTERACTIVE"
        then
                echo root=/dev/sda
        else
-               echo console=ttyS0
+               echo console=$console
        fi
 }
 
@@ -197,6 +207,9 @@ identify_qemu_args () {
        case "$1" in
        qemu-system-x86_64|qemu-system-i386)
                ;;
+       qemu-system-aarch64)
+               echo -M virt -cpu host
+               ;;
        qemu-system-ppc64)
                echo -enable-kvm -M pseries -nodefaults
                echo -device spapr-vscsi
@@ -254,7 +267,7 @@ specify_qemu_cpus () {
                echo $2
        else
                case "$1" in
-               qemu-system-x86_64|qemu-system-i386)
+               qemu-system-x86_64|qemu-system-i386|qemu-system-aarch64)
                        echo $2 -smp $3
                        ;;
                qemu-system-ppc64)
-- 
2.7.4

Reply via email to