tests/functional: Convert the Avocado ppc32 tuxrun test

Move the test into a new file so that it can be run via
qemu-system-ppc in the functional framework.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20241011131937.377223-16-thuth@redhat.com>
This commit is contained in:
Thomas Huth 2024-10-11 15:19:32 +02:00
parent a2a2a5b05d
commit 9ca8239aad
4 changed files with 37 additions and 16 deletions

View File

@ -1396,6 +1396,7 @@ F: hw/intc/openpic_kvm.c
F: include/hw/ppc/openpic_kvm.h
F: docs/system/ppc/ppce500.rst
F: tests/functional/test_ppc64_e500.py
F: tests/functional/test_ppc_tuxrun.py
mpc8544ds
M: Bernhard Beschow <shentey@gmail.com>

View File

@ -223,22 +223,6 @@ class TuxRunBaselineTest(QemuSystemTest):
"e6ffd8813c8a335bc15728f2835f90539c84be7f8f5f691a8b01451b47fb4bd7"}
self.common_tuxrun(csums=sums)
def test_ppc32(self):
"""
:avocado: tags=arch:ppc
:avocado: tags=machine:ppce500
:avocado: tags=cpu:e500mc
:avocado: tags=tuxboot:ppc32
:avocado: tags=image:uImage
:avocado: tags=shutdown:nowait
"""
sums = { "rootfs.ext4.zst" :
"8885b9d999cc24d679542a02e9b6aaf48f718f2050ece6b8347074b6ee41dd09",
"uImage" :
"1a68f74b860fda022fb12e03c5efece8c2b8b590d96cca37a8481a3ae0b3f81f" }
self.common_tuxrun(csums=sums, drive="virtio-blk-pci")
# Note: some segfaults caused by unaligned userspace access
@skipUnless(os.getenv('QEMU_TEST_FLAKY_TESTS'), 'Test is unstable on GitLab')
def test_sh4(self):

View File

@ -124,6 +124,7 @@ tests_ppc_system_thorough = [
'ppc_bamboo',
'ppc_mac',
'ppc_mpc8544ds',
'ppc_tuxrun',
'ppc_virtex_ml507',
]

View File

@ -0,0 +1,35 @@
#!/usr/bin/env python3
#
# Functional test that boots known good tuxboot images the same way
# that tuxrun (www.tuxrun.org) does. This tool is used by things like
# the LKFT project to run regression tests on kernels.
#
# Copyright (c) 2023 Linaro Ltd.
#
# Author:
# Alex Bennée <alex.bennee@linaro.org>
#
# SPDX-License-Identifier: GPL-2.0-or-later
from qemu_test import Asset
from qemu_test.tuxruntest import TuxRunBaselineTest
class TuxRunPPC32Test(TuxRunBaselineTest):
ASSET_PPC32_KERNEL = Asset(
'https://storage.tuxboot.com/20230331/ppc32/uImage',
'1a68f74b860fda022fb12e03c5efece8c2b8b590d96cca37a8481a3ae0b3f81f')
ASSET_PPC32_ROOTFS = Asset(
'https://storage.tuxboot.com/20230331/ppc32/rootfs.ext4.zst',
'8885b9d999cc24d679542a02e9b6aaf48f718f2050ece6b8347074b6ee41dd09')
def test_ppc32(self):
self.set_machine('ppce500')
self.cpu='e500mc'
self.wait_for_shutdown=False
self.common_tuxrun(kernel_asset=self.ASSET_PPC32_KERNEL,
rootfs_asset=self.ASSET_PPC32_ROOTFS,
drive="virtio-blk-pci")
if __name__ == '__main__':
TuxRunBaselineTest.main()