All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Stefan Hajnoczi" <stefanha@redhat.com>,
	"Cédric Le Goater" <clg@redhat.com>
Subject: [PULL 18/18] tests/functional: Replace the ppc64 e500 advent calendar test
Date: Wed, 26 Feb 2025 10:57:31 +0100	[thread overview]
Message-ID: <20250226095731.1172375-19-thuth@redhat.com> (raw)
In-Reply-To: <20250226095731.1172375-1-thuth@redhat.com>

From: Cédric Le Goater <clg@redhat.com>

Replace the advent calendar test with a buildroot image built with
qemu_ppc64_e5500_defconfig. Unlike the advent calendar image, this
newer buildroot image supports networking, too. Thus boot a ppce500
machine from kernel and disk, test network and poweroff.
Add '-no-shutdown' to the command line to avoid exiting from QEMU
as it seems to bother the functional framework.

Signed-off-by: Cédric Le Goater <clg@redhat.com>
Message-ID: <20250226065013.196052-1-clg@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
[thuth: Add some wording about network support to the commit message]
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/functional/test_ppc64_e500.py | 33 +++++++++++++++++++++++------
 1 file changed, 26 insertions(+), 7 deletions(-)

diff --git a/tests/functional/test_ppc64_e500.py b/tests/functional/test_ppc64_e500.py
index b92fe0b0e75..9ce7ae6c479 100755
--- a/tests/functional/test_ppc64_e500.py
+++ b/tests/functional/test_ppc64_e500.py
@@ -5,20 +5,39 @@
 # SPDX-License-Identifier: GPL-2.0-or-later
 
 from qemu_test import LinuxKernelTest, Asset
+from qemu_test import exec_command_and_wait_for_pattern
 
 
 class E500Test(LinuxKernelTest):
 
-    ASSET_DAY19 = Asset(
-        'https://qemu-advcal.gitlab.io/qac-best-of-multiarch/download/day19.tar.xz',
-        '20b1bb5a8488c664defbb5d283addc91a05335a936c63b3f5ff7eee74b725755')
+    ASSET_BR2_E5500_UIMAGE = Asset(
+        'https://github.com/legoater/qemu-ppc-boot/raw/refs/heads/main/buildroot/qemu_ppc64_e5500-2023.11-8-gdcd9f0f6eb-20240104/uImage',
+        '2478187c455d6cca3984e9dfde9c635d824ea16236b85fd6b4809f744706deda')
 
-    def test_ppc64_e500(self):
+    ASSET_BR2_E5500_ROOTFS = Asset(
+        'https://github.com/legoater/qemu-ppc-boot/raw/refs/heads/main//buildroot/qemu_ppc64_e5500-2023.11-8-gdcd9f0f6eb-20240104/rootfs.ext2',
+        '9035ef97237c84c7522baaff17d25cdfca4bb7a053d5e296e902919473423d76')
+
+    def test_ppc64_e500_buildroot(self):
         self.set_machine('ppce500')
         self.cpu = 'e5500'
-        self.archive_extract(self.ASSET_DAY19)
-        self.launch_kernel(self.scratch_file('day19', 'uImage'),
-                           wait_for='QEMU advent calendar')
+
+        uimage_path = self.ASSET_BR2_E5500_UIMAGE.fetch()
+        rootfs_path = self.ASSET_BR2_E5500_ROOTFS.fetch()
+
+        self.vm.set_console()
+        self.vm.add_args('-kernel', uimage_path,
+                         '-append', 'root=/dev/vda',
+                         '-drive', f'file={rootfs_path},if=virtio,format=raw',
+                         '-snapshot', '-no-shutdown')
+        self.vm.launch()
+
+        self.wait_for_console_pattern('Linux version')
+        self.wait_for_console_pattern('/init as init process')
+        self.wait_for_console_pattern('lease of 10.0.2.15')
+        self.wait_for_console_pattern('buildroot login:')
+        exec_command_and_wait_for_pattern(self, 'root', '#')
+        exec_command_and_wait_for_pattern(self, 'poweroff', 'Power down')
 
 if __name__ == '__main__':
     LinuxKernelTest.main()
-- 
2.48.1



  parent reply	other threads:[~2025-02-26 10:00 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-26  9:57 [PULL 00/18] Functional and other test improvements Thomas Huth
2025-02-26  9:57 ` [PULL 01/18] tests/functional: Have microblaze tests inherit common parent class Thomas Huth
2025-02-26  9:57 ` [PULL 02/18] tests/qtest/qom-test: Test retrieval of machine class properties Thomas Huth
2025-02-26  9:57 ` [PULL 03/18] tests/functional: Provide a proper name for the VMs in the replay tests Thomas Huth
2025-02-26  9:57 ` [PULL 04/18] tests/functional: Convert the xtensa replay test to the functional framework Thomas Huth
2025-02-26  9:57 ` [PULL 05/18] tests/functional: Convert the sparc replay avocado test Thomas Huth
2025-02-26  9:57 ` [PULL 06/18] tests/functional: Convert the 32-bit ppc replay avocado tests Thomas Huth
2025-02-26  9:57 ` [PULL 07/18] tests/functional: Convert the or1k " Thomas Huth
2025-02-26  9:57 ` [PULL 08/18] tests/functional: Convert the ppc64 " Thomas Huth
2025-02-26  9:57 ` [PULL 09/18] tests/functional: Convert the microblaze " Thomas Huth
2025-02-26  9:57 ` [PULL 10/18] tests/functional: Convert the m68k " Thomas Huth
2025-02-26  9:57 ` [PULL 11/18] tests/functional: Convert the arm " Thomas Huth
2025-03-07 19:08   ` Peter Maydell
2025-02-26  9:57 ` [PULL 12/18] tests/functional: Convert the alpha " Thomas Huth
2025-02-26  9:57 ` [PULL 13/18] tests/functional: Convert the s390x " Thomas Huth
2025-02-26  9:57 ` [PULL 14/18] tests/functional: Convert the aarch64 " Thomas Huth
2025-02-26  9:57 ` [PULL 15/18] tests/functional: Convert the x86_64 " Thomas Huth
2025-02-26  9:57 ` [PULL 16/18] tests/functional: Bump some arm test timeouts Thomas Huth
2025-02-26  9:57 ` [PULL 17/18] gitlab: use --refetch in check-patch/check-dco jobs Thomas Huth
2025-02-26  9:57 ` Thomas Huth [this message]
2025-03-03 12:12 ` [PULL 00/18] Functional and other test improvements Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250226095731.1172375-19-thuth@redhat.com \
    --to=thuth@redhat.com \
    --cc=clg@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.