rcutorture: Add basic ARM64 support to run scripts
authorLihao Liang <lianglihao@huawei.com>
Fri, 12 Jan 2018 10:11:32 +0000 (18:11 +0800)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Wed, 21 Feb 2018 00:21:59 +0000 (16:21 -0800)
This commit adds support of the qemu command qemu-system-aarch64
to rcutorture.

Signed-off-by: Lihao Liang <lianglihao@huawei.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
tools/testing/selftests/rcutorture/bin/functions.sh

index 07a13779eece4f01e98df5e9822a2084e8986e6e..65f6655026f0e2dd03fc821c7fbb0925921f00b4 100644 (file)
@@ -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 -machine virt,gic-version=host -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)