qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] tests/acceptance: Add a test for the sun4u sparc64 machine


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH] tests/acceptance: Add a test for the sun4u sparc64 machine
Date: Sat, 4 Jul 2020 16:58:22 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0

On 7/2/20 4:10 PM, Thomas Huth wrote:
> We can use the image from the advent calendar 2018 to test the sun4u
> machine. It's not using the "QEMU advent calendar" string, so we can
> not use the do_test_advcal_2018() from boot_linux_console.py, thus
> let's also put it into a separate file to also be able to add an
> entry to the MAINTAINERS file.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  MAINTAINERS                               |  1 +
>  tests/acceptance/machine_sparc64_sun4u.py | 35 +++++++++++++++++++++++
>  2 files changed, 36 insertions(+)
>  create mode 100644 tests/acceptance/machine_sparc64_sun4u.py
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index dec252f38b..c26bc06e39 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -1318,6 +1318,7 @@ F: include/hw/pci-host/sabre.h
>  F: hw/pci-bridge/simba.c
>  F: include/hw/pci-bridge/simba.h
>  F: pc-bios/openbios-sparc64
> +F: tests/acceptance/machine_sparc64_sun4u.py
>  
>  Sun4v
>  M: Artyom Tarasenko <atar4qemu@gmail.com>
> diff --git a/tests/acceptance/machine_sparc64_sun4u.py 
> b/tests/acceptance/machine_sparc64_sun4u.py
> new file mode 100644
> index 0000000000..2506eefe3f
> --- /dev/null
> +++ b/tests/acceptance/machine_sparc64_sun4u.py
> @@ -0,0 +1,35 @@
> +# Functional test that boots a Linux kernel and checks the console
> +#
> +# Copyright (c) 2020 Red Hat, Inc.
> +#
> +# Author:
> +#  Thomas Huth <thuth@redhat.com>
> +#
> +# This work is licensed under the terms of the GNU GPL, version 2 or
> +# later. See the COPYING file in the top-level directory.
> +
> +import os
> +
> +from avocado_qemu import Test
> +from avocado_qemu import wait_for_console_pattern
> +from avocado.utils import archive
> +
> +class Sun4uMachine(Test):

I'd rather use Sun4uMachine(LinuxKernelTest) here, ...

> +    """Boots the Linux kernel and checks that the console is operational"""
> +
> +    timeout = 90
> +
> +    def test_sparc64_sun4u(self):
> +        """
> +        :avocado: tags=arch:sparc64
> +        :avocado: tags=machine:sun4u
> +        """
> +        tar_url = ('https://www.qemu-advent-calendar.org'
> +                   '/2018/download/day23.tar.xz')
> +        tar_hash = '142db83cd974ffadc4f75c8a5cad5bcc5722c240'
> +        file_path = self.fetch_asset(tar_url, asset_hash=tar_hash)
> +        archive.extract(file_path, self.workdir)
> +        self.vm.set_console()
> +        self.vm.add_args('-kernel', self.workdir + '/day23/vmlinux')

... to use '-append', self.KERNEL_COMMON_COMMAND_LINE here.

> +        self.vm.launch()
> +        wait_for_console_pattern(self, 'Starting logging: OK')
> 

$ avocado --show=app,console run -t arch:sparc64 tests/acceptance/
Fetching asset from
tests/acceptance/machine_sparc64_sun4u.py:Sun4uMachine.test_sparc64_sun4u
 (1/1)
tests/acceptance/machine_sparc64_sun4u.py:Sun4uMachine.test_sparc64_sun4u:
console: OpenBIOS for Sparc64
console: Configuration device id QEMU version 1 machine id 0
console: kernel phys 404000 virt 40004000 size 0x10b7858
console: kernel cmdline
console: CPUs: 1 x SUNW,UltraSPARC-IIi
console: UUID: 00000000-0000-0000-0000-000000000000
console: Welcome to OpenBIOS v1.1 built on May 21 2020 19:15
console: Type 'help' for detailed information
console: [sparc64] Kernel already loaded
console: [    0.004591] PROMLIB: Sun IEEE Boot Prom 'OBP 3.10.24
1999/01/01 01:01'
console: [    0.006452] PROMLIB: Root node compatible: sun4u
console: [    0.007859] Linux version 4.16.13 (thuth@thuth.remote.csb)
(gcc version 6.4.0 (Buildroot 2018.05.2)) #46 SMP Sun Dec 16 17:16:03
CET 2018
console: [    0.039824] bootconsole [earlyprom0] enabled
console: [    0.042520] ARCH: SUN4U
...
console: [    4.823203] Booting Linux...
console: [    7.067712] rtc-m48t59 rtc-m48t59.0: setting system clock to
2020-07-04 14:52:23 UTC (1593874343)
console: [    7.216252] This architecture does not have kernel memory
protection.
console: Starting logging: OK
PASS (15.28 s)

Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

Preferably with KERNEL_COMMON_COMMAND_LINE:
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

Thanks for adding this test!

Phil.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]