From nobody Sat Apr 5 05:31:11 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1737728240; cv=none; d=zohomail.com; s=zohoarc; b=jrZesKEb9FpE9qdkN/vefOQGsDN2IqIEnCGfKDLxrki6rN5/yvXSlOFtu+GycvCtGx3iB+FdwPU+kf8x4N4bm0s4wkLO2dtJbhb/iuPlkYv/b6BJ6f1U9gc/EQZogKgfN7+jSEpKzrwRWeVf0QueVP7YJlsmWPqrWPsIhYDjN4c= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1737728240; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=kmmcx8XJk+cyBYvzDvNSR6t/TihZV6L8r9lXPgyChbA=; b=c4qs02dIe6POyjRghC0qN/xh+DMZBtkg51TrxFYs/WF7I8qyXO1InYujhBMIyBICmziwX1OgKFAyGVk1Rg0kwjMt4tkdSLK7W5j3eKEKnmuNaWsHiyjGeJakGI0+rlDMHqutlmM8Hl1ubF3OIn23jBKmULF9xpDZw9yr9NAfv38= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 173772824087152.16245819233927; Fri, 24 Jan 2025 06:17:20 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbKUM-0003HJ-Fi; Fri, 24 Jan 2025 09:16:51 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTf-00034z-Ea for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:16:07 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTd-0001IK-GV for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:16:07 -0500 Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-658-SCkgQNGfMZKJQk5waietzA-1; Fri, 24 Jan 2025 09:15:44 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 147821801F1E; Fri, 24 Jan 2025 14:15:40 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.193.187]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 2B4D419560B4; Fri, 24 Jan 2025 14:15:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1737728164; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=kmmcx8XJk+cyBYvzDvNSR6t/TihZV6L8r9lXPgyChbA=; b=dZUDBfgT95vKP3UAay3jKdzf4Td4/eHgDHCSmlftMKB5Kr+neqZux5o36MTYLm95mR+Rf2 DkIWs+9njAExSvc2yG6ezalsHZVL2/y8YFECz7V5CPTPdS79uROyx2vB7FGRcbYnC/3/wk TlK5YgrKjOa6MyJOwrP+mqwMSMZaQpA= X-MC-Unique: SCkgQNGfMZKJQk5waietzA-1 X-Mimecast-MFC-AGG-ID: SCkgQNGfMZKJQk5waietzA From: Thomas Huth To: Pavel Dovgalyuk , Paolo Bonzini , Aurelien Jarno , Jiaxun Yang , qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH 1/5] tests/functional: Add a decorator for skipping long running tests Date: Fri, 24 Jan 2025 15:15:25 +0100 Message-ID: <20250124141529.1626877-2-thuth@redhat.com> In-Reply-To: <20250124141529.1626877-1-thuth@redhat.com> References: <20250124141529.1626877-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -50 X-Spam_score: -5.1 X-Spam_bar: ----- X-Spam_report: (-5.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-2.996, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1737728242774019100 Content-Type: text/plain; charset="utf-8" Some tests have a very long runtime and might run into timeout issues e.g. when QEMU has been compiled with --enable-debug. Add a decorator for marking them more easily and document the corresponding environment variable that is used to enable the tests. Signed-off-by: Thomas Huth Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- docs/devel/testing/functional.rst | 8 ++++++++ tests/functional/qemu_test/__init__.py | 2 +- tests/functional/qemu_test/decorators.py | 14 ++++++++++++++ tests/functional/test_arm_quanta_gsj.py | 5 +++-- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/docs/devel/testing/functional.rst b/docs/devel/testing/functio= nal.rst index ae238ed3fc..7d9396b696 100644 --- a/docs/devel/testing/functional.rst +++ b/docs/devel/testing/functional.rst @@ -351,5 +351,13 @@ the code snippet below: Tests should not live in this state forever and should either be fixed or eventually removed. =20 +QEMU_TEST_TIMEOUT_EXPECTED +^^^^^^^^^^^^^^^^^^^^^^^^^^ +Tests that have a very long runtime and might run into timeout issues +e.g. if the QEMU binary has been compiled with debugging options enabled. +To avoid these timeout issues by default and to save some precious CPU +cycles during normal testing, such tests are disabled by default unless +the QEMU_TEST_TIMEOUT_EXPECTED environment variable has been set. + =20 .. _unittest: https://docs.python.org/3/library/unittest.html diff --git a/tests/functional/qemu_test/__init__.py b/tests/functional/qemu= _test/__init__.py index da1830286d..b1a19d2a4b 100644 --- a/tests/functional/qemu_test/__init__.py +++ b/tests/functional/qemu_test/__init__.py @@ -14,7 +14,7 @@ from .testcase import QemuBaseTest, QemuUserTest, QemuSystemTest from .linuxkernel import LinuxKernelTest from .decorators import skipIfMissingCommands, skipIfNotMachine, \ - skipFlakyTest, skipUntrustedTest, skipBigDataTest, \ + skipFlakyTest, skipUntrustedTest, skipBigDataTest, skipLongRuntime, \ skipIfMissingImports from .archive import archive_extract from .uncompress import uncompress diff --git a/tests/functional/qemu_test/decorators.py b/tests/functional/qe= mu_test/decorators.py index df088bc090..8f311e5309 100644 --- a/tests/functional/qemu_test/decorators.py +++ b/tests/functional/qemu_test/decorators.py @@ -86,6 +86,20 @@ def skipBigDataTest(): return skipUnless(os.getenv('QEMU_TEST_ALLOW_LARGE_STORAGE'), 'Test requires large host storage space') =20 +''' +Decorator to skip execution of tests which have a really long +runtime (and might e.g. time out if QEMU has been compiled with +debugging enabled) unless the $QEMU_TEST_TIMEOUT_EXPECTED +environment variable is set + +Example: + + @skipLongRuntime() +''' +def skipLongRuntime(): + return skipUnless(os.getenv('QEMU_TEST_TIMEOUT_EXPECTED'), + 'Test has a very long runtime and might time out') + ''' Decorator to skip execution of a test if the list of python imports is not available. diff --git a/tests/functional/test_arm_quanta_gsj.py b/tests/functional/tes= t_arm_quanta_gsj.py index 7b82e2185c..fe1d60d649 100755 --- a/tests/functional/test_arm_quanta_gsj.py +++ b/tests/functional/test_arm_quanta_gsj.py @@ -8,7 +8,8 @@ =20 from qemu_test import LinuxKernelTest, Asset, exec_command_and_wait_for_pa= ttern from qemu_test import interrupt_interactive_console_until_pattern -from unittest import skipUnless +from qemu_test import skipLongRuntime + =20 class EmcraftSf2Machine(LinuxKernelTest): =20 @@ -32,7 +33,7 @@ class EmcraftSf2Machine(LinuxKernelTest): '20200711-gsj-qemu-0/nuvoton-npcm730-gsj.dtb'), '3249b2da787d4b9ad4e61f315b160abfceb87b5e1895a7ce898ce7f40c8d4045') =20 - @skipUnless(os.getenv('QEMU_TEST_TIMEOUT_EXPECTED'), 'Test might timeo= ut') + @skipLongRuntime() def test_arm_quanta_gsj(self): self.set_machine('quanta-gsj') image_path =3D self.uncompress(self.ASSET_IMAGE, format=3D'gz') --=20 2.48.1 From nobody Sat Apr 5 05:31:11 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1737728228; cv=none; d=zohomail.com; s=zohoarc; b=apbGiv2RkXt4pMJuKqfldrMkbIa2BEnD6ziDXP5cIimpcw7pw4MzhJZGYH5HXvXBmOb4ggjlMCKtp2BfNked1G8OfcOb2mNo0+MG9J9oKCOvgtuGUMpa3RlI/qYhh2SL7XTQXDlsneOJRoSqaiyi7n8rchvL/Xn7edviKxPutCU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1737728228; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=aAYwAgX4GuiYEsrkcRmF7pRIVQDIJhG5JIGtUZRITbE=; b=ep612dFHX6Unlh9G7s+UXZ/l1DAzZdM73VEmvfUNv/IDtwwcf+agudtI736zD3gRbNO1KxfcoBI1Aaai7Wjwv9wcVXYONJhU2K093WSEfXKxE1DSPGbUVjwNAr9f5zLAr1vOw+mHvhEsjb6T7YIZ6oVuMHlFfWOrjND6LrkPrro= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1737728228169721.8521260452602; Fri, 24 Jan 2025 06:17:08 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbKTX-0002y4-HY; Fri, 24 Jan 2025 09:15:59 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTV-0002vh-Gf for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:15:57 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTT-0001E7-Jy for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:15:57 -0500 Received: from mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-211-xogSWHSaOhiUgLyPHu-Omw-1; Fri, 24 Jan 2025 09:15:46 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-05.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 9D28C195608F; Fri, 24 Jan 2025 14:15:44 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.193.187]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 2450919560A7; Fri, 24 Jan 2025 14:15:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1737728153; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=aAYwAgX4GuiYEsrkcRmF7pRIVQDIJhG5JIGtUZRITbE=; b=GtwZYlCHOhVLQs0vDKMKMNAzjnI9fD/ZnvU/8tydDfZIzjcxwR/wH2it+3+krelU+WZ9mM DePG3wVZ3eS0S4EkoNKIFXeiPt7ii8zAAaZcFR2m+Px5Lrqw4bll75ePDeIVbQexv0P42s P1YF7/Y6W1T8nxkv2FSMJiDNIHsJ42s= X-MC-Unique: xogSWHSaOhiUgLyPHu-Omw-1 X-Mimecast-MFC-AGG-ID: xogSWHSaOhiUgLyPHu-Omw From: Thomas Huth To: Pavel Dovgalyuk , Paolo Bonzini , Aurelien Jarno , Jiaxun Yang , qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH 2/5] tests/functional: Add the ReplayKernelBase class Date: Fri, 24 Jan 2025 15:15:26 +0100 Message-ID: <20250124141529.1626877-3-thuth@redhat.com> In-Reply-To: <20250124141529.1626877-1-thuth@redhat.com> References: <20250124141529.1626877-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -50 X-Spam_score: -5.1 X-Spam_bar: ----- X-Spam_report: (-5.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-2.996, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1737728230713019100 Content-Type: text/plain; charset="utf-8" Copy the ReplayKernelBase class from the avocado tests. We are going to need it to convert the related replay tests in the following patches. Signed-off-by: Thomas Huth Reviewed-by: Daniel P. Berrang=C3=A9 --- tests/functional/replay_kernel.py | 84 +++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 tests/functional/replay_kernel.py diff --git a/tests/functional/replay_kernel.py b/tests/functional/replay_ke= rnel.py new file mode 100644 index 0000000000..8e8ac7d052 --- /dev/null +++ b/tests/functional/replay_kernel.py @@ -0,0 +1,84 @@ +# Record/replay test that boots a Linux kernel +# +# Copyright (c) 2020 ISP RAS +# +# Author: +# Pavel Dovgalyuk +# +# 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 +import logging +import time +import subprocess + +from qemu_test.linuxkernel import LinuxKernelTest + +class ReplayKernelBase(LinuxKernelTest): + """ + Boots a Linux kernel in record mode and checks that the console + is operational and the kernel command line is properly passed + from QEMU to the kernel. + Then replays the same scenario and verifies, that QEMU correctly + terminates. + """ + + timeout =3D 180 + REPLAY_KERNEL_COMMAND_LINE =3D 'printk.time=3D1 panic=3D-1 ' + + def run_vm(self, kernel_path, kernel_command_line, console_pattern, + record, shift, args, replay_path): + # icount requires TCG to be available + self.require_accelerator('tcg') + + logger =3D logging.getLogger('replay') + start_time =3D time.time() + vm =3D self.get_vm() + vm.set_console() + if record: + logger.info('recording the execution...') + mode =3D 'record' + else: + logger.info('replaying the execution...') + mode =3D 'replay' + vm.add_args('-icount', 'shift=3D%s,rr=3D%s,rrfile=3D%s' % + (shift, mode, replay_path), + '-kernel', kernel_path, + '-append', kernel_command_line, + '-net', 'none', + '-no-reboot') + if args: + vm.add_args(*args) + vm.launch() + self.wait_for_console_pattern(console_pattern, vm) + if record: + vm.shutdown() + logger.info('finished the recording with log size %s bytes' + % os.path.getsize(replay_path)) + self.run_replay_dump(replay_path) + logger.info('successfully tested replay-dump.py') + else: + vm.wait() + logger.info('successfully finished the replay') + elapsed =3D time.time() - start_time + logger.info('elapsed time %.2f sec' % elapsed) + return elapsed + + def run_replay_dump(self, replay_path): + try: + subprocess.check_call(["./scripts/replay-dump.py", + "-f", replay_path], + stdout=3Dsubprocess.DEVNULL) + except subprocess.CalledProcessError: + self.fail('replay-dump.py failed') + + def run_rr(self, kernel_path, kernel_command_line, console_pattern, + shift=3D7, args=3DNone): + replay_path =3D os.path.join(self.workdir, 'replay.bin') + t1 =3D self.run_vm(kernel_path, kernel_command_line, console_patte= rn, + True, shift, args, replay_path) + t2 =3D self.run_vm(kernel_path, kernel_command_line, console_patte= rn, + False, shift, args, replay_path) + logger =3D logging.getLogger('replay') + logger.info('replay overhead {:.2%}'.format(t2 / t1 - 1)) --=20 2.48.1 From nobody Sat Apr 5 05:31:11 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1737728197; cv=none; d=zohomail.com; s=zohoarc; b=dFrVEMrOtV079TsYdJ45N4cmAgSVWjUZOBfnw3EQbPJ1j+VqGSL7xmM8xzkaRj4Kggjb3Tdf8aP2DB+3cmf1jhwM+783UDnsGzblN2VK0sdwJOQ66p1v67xJtrTRGMWABY5krAmCHWnnR+Wz3KgN9Zrh6QDHrOQzCv7NCWAg/UQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1737728197; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=361Mg28r39AijLyNBmfEKQDx1yUbtYDrPhh7YomrG6M=; b=CGWdiqWshsyVjayW00hhO8yiDchx5BWrQDJ73bMVYdsbitXPv9cQ7cw5wkdrTH9qY9NdgnutOAx+4Dpu/Jz25YX/6YPE5XUA6ykt3NhkMKrKSfNHZaLjpXxkzyHfEklU2YcCBGS9Qf16sj6InsOUJcxwqYEZ7YimtpydSSypT9w= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1737728197213607.6696376409674; Fri, 24 Jan 2025 06:16:37 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbKTe-00032x-Ql; Fri, 24 Jan 2025 09:16:07 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTW-0002xj-Hp for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:15:59 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTT-0001F6-Qf for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:15:58 -0500 Received: from mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-65-wYvAqBc2OBGaIMxjCZzB3g-1; Fri, 24 Jan 2025 09:15:50 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 3A43419560B7; Fri, 24 Jan 2025 14:15:49 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.193.187]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 1F89219560B2; Fri, 24 Jan 2025 14:15:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1737728153; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=361Mg28r39AijLyNBmfEKQDx1yUbtYDrPhh7YomrG6M=; b=JCzRpxGsWss4JHzjBzBqa7anq1omIH8QQwbnrbXgqMb001Ug4TbfBUtRboDPGSzuD65byf bpIUTY5w/jO1yEVWnttaH7y6p8Qyu1memODgj7YY0lAhNR5I/GgkaAvWUUwkTigDHSMRGZ AC2nu3uHPDhOV0MBOaSRkYC8EjWwHsg= X-MC-Unique: wYvAqBc2OBGaIMxjCZzB3g-1 X-Mimecast-MFC-AGG-ID: wYvAqBc2OBGaIMxjCZzB3g From: Thomas Huth To: Pavel Dovgalyuk , Paolo Bonzini , Aurelien Jarno , Jiaxun Yang , qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH 3/5] tests/functional/test_mipsel_malta: Convert the mipsel replay tests Date: Fri, 24 Jan 2025 15:15:27 +0100 Message-ID: <20250124141529.1626877-4-thuth@redhat.com> In-Reply-To: <20250124141529.1626877-1-thuth@redhat.com> References: <20250124141529.1626877-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -50 X-Spam_score: -5.1 X-Spam_bar: ----- X-Spam_report: (-5.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-2.996, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1737728200237019100 Content-Type: text/plain; charset="utf-8" Move the mipsel replay tests from tests/avocado/replay_kernel.py to the functional framework. Since the functional tests should be run per target, we cannot stick all replay tests in one file. Thus let's add these tests to the file where we already use the same asset already. Signed-off-by: Thomas Huth --- tests/avocado/replay_kernel.py | 54 --------------------------- tests/functional/meson.build | 1 + tests/functional/test_mipsel_malta.py | 30 +++++++++++++-- 3 files changed, 28 insertions(+), 57 deletions(-) diff --git a/tests/avocado/replay_kernel.py b/tests/avocado/replay_kernel.py index e22c200a36..4f50f48163 100644 --- a/tests/avocado/replay_kernel.py +++ b/tests/avocado/replay_kernel.py @@ -521,57 +521,3 @@ def test_mips64el_malta_5KEc_cpio(self): console_pattern =3D 'Boot successful.' self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5, args=3D('-initrd', initrd_path)) - - def do_test_mips_malta32el_nanomips(self, kernel_path_xz): - kernel_path =3D self.workdir + "kernel" - with lzma.open(kernel_path_xz, 'rb') as f_in: - with open(kernel_path, 'wb') as f_out: - shutil.copyfileobj(f_in, f_out) - - kernel_command_line =3D (self.KERNEL_COMMON_COMMAND_LINE + - 'mem=3D256m@@0x0 ' - 'console=3DttyS0') - console_pattern =3D 'Kernel command line: %s' % kernel_command_line - self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5) - - def test_mips_malta32el_nanomips_4k(self): - """ - :avocado: tags=3Darch:mipsel - :avocado: tags=3Dmachine:malta - :avocado: tags=3Dendian:little - :avocado: tags=3Dcpu:I7200 - """ - kernel_url =3D ('http://mipsdistros.mips.com/LinuxDistro/nanomips/' - 'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/' - 'generic_nano32r6el_page4k.xz') - kernel_hash =3D '477456aafd2a0f1ddc9482727f20fe9575565dd6' - kernel_path_xz =3D self.fetch_asset(kernel_url, asset_hash=3Dkerne= l_hash) - self.do_test_mips_malta32el_nanomips(kernel_path_xz) - - def test_mips_malta32el_nanomips_16k_up(self): - """ - :avocado: tags=3Darch:mipsel - :avocado: tags=3Dmachine:malta - :avocado: tags=3Dendian:little - :avocado: tags=3Dcpu:I7200 - """ - kernel_url =3D ('http://mipsdistros.mips.com/LinuxDistro/nanomips/' - 'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/' - 'generic_nano32r6el_page16k_up.xz') - kernel_hash =3D 'e882868f944c71c816e832e2303b7874d044a7bc' - kernel_path_xz =3D self.fetch_asset(kernel_url, asset_hash=3Dkerne= l_hash) - self.do_test_mips_malta32el_nanomips(kernel_path_xz) - - def test_mips_malta32el_nanomips_64k_dbg(self): - """ - :avocado: tags=3Darch:mipsel - :avocado: tags=3Dmachine:malta - :avocado: tags=3Dendian:little - :avocado: tags=3Dcpu:I7200 - """ - kernel_url =3D ('http://mipsdistros.mips.com/LinuxDistro/nanomips/' - 'kernels/v4.15.18-432-gb2eb9a8b07a1-20180627102142/' - 'generic_nano32r6el_page64k_dbg.xz') - kernel_hash =3D '18d1c68f2e23429e266ca39ba5349ccd0aeb7180' - kernel_path_xz =3D self.fetch_asset(kernel_url, asset_hash=3Dkerne= l_hash) - self.do_test_mips_malta32el_nanomips(kernel_path_xz) diff --git a/tests/functional/meson.build b/tests/functional/meson.build index b7719ab85f..7d233213c1 100644 --- a/tests/functional/meson.build +++ b/tests/functional/meson.build @@ -35,6 +35,7 @@ test_timeouts =3D { 'arm_sx1' : 360, 'intel_iommu': 300, 'mips_malta' : 120, + 'mipsel_malta' : 500, 'netdev_ethtool' : 180, 'ppc_40p' : 240, 'ppc64_hv' : 1000, diff --git a/tests/functional/test_mipsel_malta.py b/tests/functional/test_= mipsel_malta.py index fe9c3a172e..fff42c7f4f 100755 --- a/tests/functional/test_mipsel_malta.py +++ b/tests/functional/test_mipsel_malta.py @@ -9,12 +9,13 @@ # # SPDX-License-Identifier: GPL-2.0-or-later =20 -from qemu_test import QemuSystemTest, LinuxKernelTest, Asset +from qemu_test import QemuSystemTest, Asset, wait_for_console_pattern from qemu_test import interrupt_interactive_console_until_pattern -from qemu_test import wait_for_console_pattern +from qemu_test import skipLongRuntime +from replay_kernel import ReplayKernelBase =20 =20 -class MaltaMachineConsole(LinuxKernelTest): +class MaltaMachineConsole(ReplayKernelBase): =20 ASSET_KERNEL_4K =3D Asset( ('http://mipsdistros.mips.com/LinuxDistro/nanomips/' @@ -57,6 +58,29 @@ def test_mips_malta32el_nanomips_16k_up(self): def test_mips_malta32el_nanomips_64k_dbg(self): self.do_test_mips_malta32el_nanomips(self.ASSET_KERNEL_64K) =20 + def do_test_replay_mips_malta32el_nanomips(self, kernel_asset): + self.set_machine('malta') + self.cpu =3D 'I7200' + kernel_path =3D self.uncompress(kernel_asset) + + kernel_command_line =3D (self.KERNEL_COMMON_COMMAND_LINE + + 'mem=3D256m@@0x0 ' + 'console=3DttyS0') + console_pattern =3D 'Kernel command line: %s' % kernel_command_line + self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5) + + @skipLongRuntime() + def test_replay_mips_malta32el_nanomips_4k(self): + self.do_test_replay_mips_malta32el_nanomips(self.ASSET_KERNEL_4K) + + @skipLongRuntime() + def test_replay_mips_malta32el_nanomips_16k_up(self): + self.do_test_replay_mips_malta32el_nanomips(self.ASSET_KERNEL_16K) + + @skipLongRuntime() + def test_replay_mips_malta32el_nanomips_64k_dbg(self): + self.do_test_replay_mips_malta32el_nanomips(self.ASSET_KERNEL_64K) + =20 class MaltaMachineYAMON(QemuSystemTest): =20 --=20 2.48.1 From nobody Sat Apr 5 05:31:11 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1737728277; cv=none; d=zohomail.com; s=zohoarc; b=Kae4X5zVSqfQCaexoYyWpOlbwvGzCmEhjDNBSLxqnx2CW3mP6+E2FdGanGlhfvkq94ZfgG6wXYPl8J/k4oMLaHfboe2WHS+5vb8scD6eCDNANmP0UBZb5w89T0nFs4t8x5RPxcEwqPFn5+9gU4bh6RAJTcz43n/F2QdjWVtwWzw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1737728277; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=/MKy6zBPW7+skO3SCY3faTwqL/xcuuDQJyNlVi6k7zw=; b=AUVCSv70PW7HuTRpo6FK+rcY6dvJECsuCke8eYQPAYOcRjgkhswznzPxQ643L/MQ02sdQ40s5sebDaMbgWL8PnpHau9wI5eWejaswt9ho34z7L++Q87oim4ryn85FNYPIVF9nF/8sJnHzdtt51wpIcpJ6/obxRORAyZ09F8dWjM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1737728277872436.57646752024414; Fri, 24 Jan 2025 06:17:57 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbKUK-0003HI-Ep; Fri, 24 Jan 2025 09:16:50 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTu-00037j-KC for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:16:23 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTs-0001JZ-Nq for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:16:22 -0500 Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-270-UrRDnVyEMAu2EbElk5ZI7g-1; Fri, 24 Jan 2025 09:15:59 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 722201801F1C; Fri, 24 Jan 2025 14:15:54 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.193.187]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id AE42419560A7; Fri, 24 Jan 2025 14:15:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1737728179; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=/MKy6zBPW7+skO3SCY3faTwqL/xcuuDQJyNlVi6k7zw=; b=fJLWtGhc7X29iXR2BE8cMzY5r1qwYmIjDGGN67jZ2Z9TmZ2ySAqnWDq/dHh6KhaDRgfgdn u/FXotTMA0jHnAcpym7svab5HYO+pZbWI/eLm37R8OLAFsKR/G+1SutzAVxHUWzXD6w4XL 6lCF4p/GKECH0SMNH37Za136m12Rxoc= X-MC-Unique: UrRDnVyEMAu2EbElk5ZI7g-1 X-Mimecast-MFC-AGG-ID: UrRDnVyEMAu2EbElk5ZI7g From: Thomas Huth To: Pavel Dovgalyuk , Paolo Bonzini , Aurelien Jarno , Jiaxun Yang , qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH 4/5] tests/functional/test_mips64el_malta: Convert the mips64el replay tests Date: Fri, 24 Jan 2025 15:15:28 +0100 Message-ID: <20250124141529.1626877-5-thuth@redhat.com> In-Reply-To: <20250124141529.1626877-1-thuth@redhat.com> References: <20250124141529.1626877-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -45 X-Spam_score: -4.6 X-Spam_bar: ---- X-Spam_report: (-4.6 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-2.996, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, PDS_BTC_ID=0.498, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1737728280647019100 Content-Type: text/plain; charset="utf-8" Move the mips64el replay tests from tests/avocado/replay_kernel.py to the functional framework. Since the functional tests should be run per target, we cannot stick all replay tests in one file. Thus let's add these tests to the file where we already use the same asset already. Signed-off-by: Thomas Huth --- tests/avocado/replay_kernel.py | 57 ------------------------- tests/functional/test_mips64el_malta.py | 26 ++++++++++- 2 files changed, 25 insertions(+), 58 deletions(-) diff --git a/tests/avocado/replay_kernel.py b/tests/avocado/replay_kernel.py index 4f50f48163..a45881b9a6 100644 --- a/tests/avocado/replay_kernel.py +++ b/tests/avocado/replay_kernel.py @@ -162,33 +162,6 @@ def test_mips_malta(self): =20 self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5) =20 - def test_mips64el_malta(self): - """ - This test requires the ar tool to extract "data.tar.gz" from - the Debian package. - - The kernel can be rebuilt using this Debian kernel source [1] and - following the instructions on [2]. - - [1] http://snapshot.debian.org/package/linux-2.6/2.6.32-48/ - #linux-source-2.6.32_2.6.32-48 - [2] https://kernel-team.pages.debian.net/kernel-handbook/ - ch-common-tasks.html#s-common-official - - :avocado: tags=3Darch:mips64el - :avocado: tags=3Dmachine:malta - """ - deb_url =3D ('http://snapshot.debian.org/archive/debian/' - '20130217T032700Z/pool/main/l/linux-2.6/' - 'linux-image-2.6.32-5-5kc-malta_2.6.32-48_mipsel.deb') - deb_hash =3D '1aaec92083bf22fda31e0d27fa8d9a388e5fc3d5' - deb_path =3D self.fetch_asset(deb_url, asset_hash=3Ddeb_hash) - kernel_path =3D self.extract_from_deb(deb_path, - '/boot/vmlinux-2.6.32-5-5kc-ma= lta') - kernel_command_line =3D self.KERNEL_COMMON_COMMAND_LINE + 'console= =3DttyS0' - console_pattern =3D 'Kernel command line: %s' % kernel_command_line - self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5) - def test_aarch64_virt(self): """ :avocado: tags=3Darch:aarch64 @@ -491,33 +464,3 @@ def test_mips_malta_cpio(self): console_pattern =3D 'Boot successful.' self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5, args=3D('-initrd', initrd_path)) - - @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code= ') - def test_mips64el_malta_5KEc_cpio(self): - """ - :avocado: tags=3Darch:mips64el - :avocado: tags=3Dmachine:malta - :avocado: tags=3Dendian:little - :avocado: tags=3Dslowness:high - :avocado: tags=3Dcpu:5KEc - """ - kernel_url =3D ('https://github.com/philmd/qemu-testing-blob/' - 'raw/9ad2df38/mips/malta/mips64el/' - 'vmlinux-3.19.3.mtoman.20150408') - kernel_hash =3D '00d1d268fb9f7d8beda1de6bebcc46e884d71754' - kernel_path =3D self.fetch_asset(kernel_url, asset_hash=3Dkernel_h= ash) - initrd_url =3D ('https://github.com/groeck/linux-build-test/' - 'raw/8584a59e/rootfs/' - 'mipsel64/rootfs.mipsel64r1.cpio.gz') - initrd_hash =3D '1dbb8a396e916847325284dbe2151167' - initrd_path_gz =3D self.fetch_asset(initrd_url, algorithm=3D'md5', - asset_hash=3Dinitrd_hash) - initrd_path =3D self.workdir + "rootfs.cpio" - archive.gzip_uncompress(initrd_path_gz, initrd_path) - - kernel_command_line =3D (self.KERNEL_COMMON_COMMAND_LINE + - 'console=3DttyS0 console=3Dtty ' - 'rdinit=3D/sbin/init noreboot') - console_pattern =3D 'Boot successful.' - self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5, - args=3D('-initrd', initrd_path)) diff --git a/tests/functional/test_mips64el_malta.py b/tests/functional/tes= t_mips64el_malta.py index a8da15a26b..1eac62b452 100755 --- a/tests/functional/test_mips64el_malta.py +++ b/tests/functional/test_mips64el_malta.py @@ -15,9 +15,10 @@ from qemu_test import LinuxKernelTest, Asset from qemu_test import exec_command_and_wait_for_pattern from qemu_test import skipIfMissingImports, skipFlakyTest, skipUntrustedTe= st +from replay_kernel import ReplayKernelBase =20 =20 -class MaltaMachineConsole(LinuxKernelTest): +class MaltaMachineConsole(ReplayKernelBase): =20 ASSET_KERNEL_2_63_2 =3D Asset( ('http://snapshot.debian.org/archive/debian/' @@ -51,6 +52,15 @@ def test_mips64el_malta(self): console_pattern =3D 'Kernel command line: %s' % kernel_command_line self.wait_for_console_pattern(console_pattern) =20 + def test_replay_mips64el_malta(self): + self.set_machine('malta') + kernel_path =3D self.archive_extract(self.ASSET_KERNEL_2_63_2, + member=3D'boot/vmlinux-2.6.32-5-5kc-ma= lta') + kernel_command_line =3D self.KERNEL_COMMON_COMMAND_LINE + 'console= =3DttyS0' + console_pattern =3D 'Kernel command line: %s' % kernel_command_line + self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5) + + ASSET_KERNEL_3_19_3 =3D Asset( ('https://github.com/philmd/qemu-testing-blob/' 'raw/9ad2df38/mips/malta/mips64el/' @@ -90,6 +100,20 @@ def test_mips64el_malta_5KEc_cpio(self): # Wait for VM to shut down gracefully self.vm.wait() =20 + @skipUntrustedTest() + def test_replay_mips64el_malta_5KEc_cpio(self): + self.set_machine('malta') + self.cpu =3D '5KEc' + kernel_path =3D self.ASSET_KERNEL_3_19_3.fetch() + initrd_path =3D self.uncompress(self.ASSET_CPIO_R1) + + kernel_command_line =3D (self.KERNEL_COMMON_COMMAND_LINE + + 'console=3DttyS0 console=3Dtty ' + 'rdinit=3D/sbin/init noreboot') + console_pattern =3D 'Boot successful.' + self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5, + args=3D('-initrd', initrd_path)) + =20 @skipIfMissingImports('numpy', 'cv2') class MaltaMachineFramebuffer(LinuxKernelTest): --=20 2.48.1 From nobody Sat Apr 5 05:31:11 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1737728280; cv=none; d=zohomail.com; s=zohoarc; b=M5m/L/Oyyx0DkwioU4YruzD3PNGchOiQBQNzeN/FWnEEH2BB8BlEK2BN5OBm1T+gL6adlXmtgOgNof76mWo2dWDPpnF50dwGUdZYkOd1d601fG1E94pmJHeXNcT1yh1Ir0u0zlQDaRlQNMAQboBxX0dZ641yR+KWTKmIbpCHHLo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1737728280; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3MQUC8M+UPWyZ0gLq5774sk5T198A7r6k+54Ow2oEro=; b=NMJAFhGxhY1vjgrTkjR1V/fIW1djglLT+P6ViC7uJUFYQgnvS2Qps5qkJdAj2vIDMKqYfquj0TxcPbJ2CsFelR2rph5EbKLqlTdltpxt+FftrxiBok6QIgLg3qa9VPJbrhQyDBAVlvPocrZL6TBUgp9TBQzk8bdgN+EWvF5u6Fo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1737728280755166.7698483694627; Fri, 24 Jan 2025 06:18:00 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbKV8-0003wT-Pv; Fri, 24 Jan 2025 09:17:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTy-0003E2-IR for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:16:27 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbKTw-0001K2-Jm for qemu-devel@nongnu.org; Fri, 24 Jan 2025 09:16:26 -0500 Received: from mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-124-6dKKzFwiP0SVuXmuSbv2BA-1; Fri, 24 Jan 2025 09:16:02 -0500 Received: from mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.12]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-08.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id AD2FF1801F18; Fri, 24 Jan 2025 14:15:57 +0000 (UTC) Received: from thuth-p1g4.redhat.com (unknown [10.39.193.187]) by mx-prod-int-03.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id E84E619560A7; Fri, 24 Jan 2025 14:15:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1737728183; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=3MQUC8M+UPWyZ0gLq5774sk5T198A7r6k+54Ow2oEro=; b=VcgTMur7pdRxvRXbDopbdbSdfT8vpCA3lG4yV2XQO7VJt8GIgJZkPXx1UiqDm0pO53XmSr jEsrXHaMkW3u40jcC8nSG9FTyHhpEs4FbyYZk64xxlTe8lw9eb7Z3g3eawsZQ+gnrbpNQc End+QyvG19MjfA98oY96WP3lqgYP4O8= X-MC-Unique: 6dKKzFwiP0SVuXmuSbv2BA-1 X-Mimecast-MFC-AGG-ID: 6dKKzFwiP0SVuXmuSbv2BA From: Thomas Huth To: Pavel Dovgalyuk , Paolo Bonzini , Aurelien Jarno , Jiaxun Yang , qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Subject: [PATCH 5/5] tests/functional/test_mips_malta: Convert the mips big endian replay tests Date: Fri, 24 Jan 2025 15:15:29 +0100 Message-ID: <20250124141529.1626877-6-thuth@redhat.com> In-Reply-To: <20250124141529.1626877-1-thuth@redhat.com> References: <20250124141529.1626877-1-thuth@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Scanned-By: MIMEDefang 3.0 on 10.30.177.12 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=thuth@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -50 X-Spam_score: -5.1 X-Spam_bar: ----- X-Spam_report: (-5.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-2.996, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1737728282647019100 Content-Type: text/plain; charset="utf-8" Move the mips big endian replay tests from tests/avocado/replay_kernel.py to the functional framework. Since the functional tests should be run per target, we cannot stick all replay tests in one file. Thus let's add these tests to the file where we already use the same asset already. Signed-off-by: Thomas Huth --- tests/avocado/replay_kernel.py | 54 ----------------------------- tests/functional/test_mips_malta.py | 29 ++++++++++++++-- 2 files changed, 26 insertions(+), 57 deletions(-) diff --git a/tests/avocado/replay_kernel.py b/tests/avocado/replay_kernel.py index a45881b9a6..b9b54a8793 100644 --- a/tests/avocado/replay_kernel.py +++ b/tests/avocado/replay_kernel.py @@ -144,24 +144,6 @@ def test_x86_64_q35(self): =20 self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5) =20 - def test_mips_malta(self): - """ - :avocado: tags=3Darch:mips - :avocado: tags=3Dmachine:malta - :avocado: tags=3Dendian:big - """ - deb_url =3D ('http://snapshot.debian.org/archive/debian/' - '20130217T032700Z/pool/main/l/linux-2.6/' - 'linux-image-2.6.32-5-4kc-malta_2.6.32-48_mips.deb') - deb_hash =3D 'a8cfc28ad8f45f54811fc6cf74fc43ffcfe0ba04' - deb_path =3D self.fetch_asset(deb_url, asset_hash=3Ddeb_hash) - kernel_path =3D self.extract_from_deb(deb_path, - '/boot/vmlinux-2.6.32-5-4kc-ma= lta') - kernel_command_line =3D self.KERNEL_COMMON_COMMAND_LINE + 'console= =3DttyS0' - console_pattern =3D 'Kernel command line: %s' % kernel_command_line - - self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5) - def test_aarch64_virt(self): """ :avocado: tags=3Darch:aarch64 @@ -428,39 +410,3 @@ def test_xtensa_lx60(self): '/qac-best-of-multiarch/download/day02.tar.xz') file_path =3D self.fetch_asset(tar_url, asset_hash=3Dtar_hash) self.do_test_advcal_2018(file_path, 'santas-sleigh-ride.elf') - -@skipUnless(os.getenv('AVOCADO_TIMEOUT_EXPECTED'), 'Test might timeout') -class ReplayKernelSlow(ReplayKernelBase): - # Override the timeout, because this kernel includes an inner - # loop which is executed with TB recompilings during replay, - # making it very slow. - timeout =3D 180 - - def test_mips_malta_cpio(self): - """ - :avocado: tags=3Darch:mips - :avocado: tags=3Dmachine:malta - :avocado: tags=3Dendian:big - :avocado: tags=3Dslowness:high - """ - deb_url =3D ('http://snapshot.debian.org/archive/debian/' - '20160601T041800Z/pool/main/l/linux/' - 'linux-image-4.5.0-2-4kc-malta_4.5.5-1_mips.deb') - deb_hash =3D 'a3c84f3e88b54e06107d65a410d1d1e8e0f340f8' - deb_path =3D self.fetch_asset(deb_url, asset_hash=3Ddeb_hash) - kernel_path =3D self.extract_from_deb(deb_path, - '/boot/vmlinux-4.5.0-2-4kc-mal= ta') - initrd_url =3D ('https://github.com/groeck/linux-build-test/raw/' - '8584a59ed9e5eb5ee7ca91f6d74bbb06619205b8/rootfs/' - 'mips/rootfs.cpio.gz') - initrd_hash =3D 'bf806e17009360a866bf537f6de66590de349a99' - initrd_path_gz =3D self.fetch_asset(initrd_url, asset_hash=3Dinitr= d_hash) - initrd_path =3D self.workdir + "rootfs.cpio" - archive.gzip_uncompress(initrd_path_gz, initrd_path) - - kernel_command_line =3D (self.KERNEL_COMMON_COMMAND_LINE + - 'console=3DttyS0 console=3Dtty ' - 'rdinit=3D/sbin/init noreboot') - console_pattern =3D 'Boot successful.' - self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5, - args=3D('-initrd', initrd_path)) diff --git a/tests/functional/test_mips_malta.py b/tests/functional/test_mi= ps_malta.py index 3b15038d89..a745f21dd2 100755 --- a/tests/functional/test_mips_malta.py +++ b/tests/functional/test_mips_malta.py @@ -6,11 +6,12 @@ # # SPDX-License-Identifier: GPL-2.0-or-later =20 -from qemu_test import LinuxKernelTest, Asset +from qemu_test import Asset, skipLongRuntime from qemu_test import exec_command_and_wait_for_pattern +from replay_kernel import ReplayKernelBase =20 =20 -class MaltaMachineConsole(LinuxKernelTest): +class MaltaMachineConsole(ReplayKernelBase): =20 ASSET_KERNEL_2_63_2 =3D Asset( ('http://snapshot.debian.org/archive/debian/' @@ -32,6 +33,14 @@ def test_mips_malta(self): console_pattern =3D 'Kernel command line: %s' % kernel_command_line self.wait_for_console_pattern(console_pattern) =20 + def test_replay_mips_malta(self): + self.set_machine('malta') + kernel_path =3D self.archive_extract(self.ASSET_KERNEL_2_63_2, + member=3D'boot/vmlinux-2.6.32-5-4kc-m= alta') + kernel_command_line =3D self.KERNEL_COMMON_COMMAND_LINE + 'console= =3DttyS0' + console_pattern =3D 'Kernel command line: %s' % kernel_command_line + self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5) + ASSET_KERNEL_4_5_0 =3D Asset( ('http://snapshot.debian.org/archive/debian/' '20160601T041800Z/pool/main/l/linux/' @@ -71,6 +80,20 @@ def test_mips_malta_cpio(self): # Wait for VM to shut down gracefully self.vm.wait() =20 + @skipLongRuntime() + def test_replay_mips_malta_cpio(self): + self.set_machine('malta') + kernel_path =3D self.archive_extract(self.ASSET_KERNEL_4_5_0, + member=3D'boot/vmlinux-4.5.0-2-4kc-m= alta') + initrd_path =3D self.uncompress(self.ASSET_INITRD) + + kernel_command_line =3D (self.KERNEL_COMMON_COMMAND_LINE + + 'console=3DttyS0 console=3Dtty ' + 'rdinit=3D/sbin/init noreboot') + console_pattern =3D 'Boot successful.' + self.run_rr(kernel_path, kernel_command_line, console_pattern, shi= ft=3D5, + args=3D('-initrd', initrd_path)) + =20 if __name__ =3D=3D '__main__': - LinuxKernelTest.main() + ReplayKernelBase.main() --=20 2.48.1