tests/functional: Convert the Avocado s390x tuxrun test

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

Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-ID: <20241011131937.377223-6-thuth@redhat.com>
This commit is contained in:
Thomas Huth 2024-10-11 15:19:22 +02:00
parent 116667aa60
commit a7a9f513fb
3 changed files with 35 additions and 18 deletions

View File

@ -1690,7 +1690,7 @@ S: Supported
F: hw/s390x/
F: include/hw/s390x/
F: configs/devices/s390x-softmmu/default.mak
F: tests/functional/test_s390x_ccw_virtio.py
F: tests/functional/test_s390x_*
T: git https://github.com/borntraeger/qemu.git s390-next
L: qemu-s390x@nongnu.org

View File

@ -441,23 +441,6 @@ class TuxRunBaselineTest(QemuSystemTest):
self.common_tuxrun(csums=sums)
def test_s390(self):
"""
:avocado: tags=arch:s390x
:avocado: tags=endian:big
:avocado: tags=tuxboot:s390
:avocado: tags=image:bzImage
:avocado: tags=shutdown:nowait
"""
sums = { "bzImage" :
"0414e98dd1c3dafff8496c9cd9c28a5f8d04553bb5ba37e906a812b48d442ef0",
"rootfs.ext4.zst" :
"88c37c32276677f873a25ab9ec6247895b8e3e6f8259134de2a616080b8ab3fc" }
self.common_tuxrun(csums=sums,
drive="virtio-blk-ccw",
haltmsg="Requesting system halt")
# 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

@ -0,0 +1,34 @@
#!/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 TuxRunS390xTest(TuxRunBaselineTest):
ASSET_S390X_KERNEL = Asset(
'https://storage.tuxboot.com/20230331/s390/bzImage',
'0414e98dd1c3dafff8496c9cd9c28a5f8d04553bb5ba37e906a812b48d442ef0')
ASSET_S390X_ROOTFS = Asset(
'https://storage.tuxboot.com/20230331/s390/rootfs.ext4.zst',
'88c37c32276677f873a25ab9ec6247895b8e3e6f8259134de2a616080b8ab3fc')
def test_s390(self):
self.wait_for_shutdown=False
self.common_tuxrun(kernel_asset=self.ASSET_S390X_KERNEL,
rootfs_asset=self.ASSET_S390X_ROOTFS,
drive="virtio-blk-ccw",
haltmsg="Requesting system halt")
if __name__ == '__main__':
TuxRunBaselineTest.main()