* [PATCH v2 01/27] tests/functional: update the arm tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 02/27] tests/functional: update the i386 " Alex Bennée
` (25 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-21-alex.bennee@linaro.org>
---
tests/functional/test_arm_tuxrun.py | 28 ++++++++++++++--------------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/tests/functional/test_arm_tuxrun.py b/tests/functional/test_arm_tuxrun.py
index 944f0756e1..4ac85f48ac 100755
--- a/tests/functional/test_arm_tuxrun.py
+++ b/tests/functional/test_arm_tuxrun.py
@@ -17,14 +17,14 @@
class TuxRunArmTest(TuxRunBaselineTest):
ASSET_ARMV5_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/armv5/zImage',
- 'c95af2f27647c12265d75e9df44c22ff5228c59855f54aaa70f41ec2842e3a4d')
+ 'https://storage.tuxboot.com/buildroot/20241119/armv5/zImage',
+ '3931a3908dbcf0ec0fe292d035ffc4dfed95f797dedd4a59ccfcf7a46e6f92d4')
ASSET_ARMV5_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/armv5/rootfs.ext4.zst',
- '17177afa74e7294da0642861f08c88ca3c836764299a54bf6d1ce276cb9712a5')
+ 'https://storage.tuxboot.com/buildroot/20241119/armv5/rootfs.ext4.zst',
+ '60ff78b68c7021df378e4fc2d66d3b016484d1acc7e07fb8920c1d8e30f4571f')
ASSET_ARMV5_DTB = Asset(
- 'https://storage.tuxboot.com/20230331/armv5/versatile-pb.dtb',
- '0bc0c0b0858cefd3c32b385c0d66d97142ded29472a496f4f490e42fc7615b25')
+ 'https://storage.tuxboot.com/buildroot/20241119/armv5/versatile-pb.dtb',
+ '50988e69ef3f3b08bfb9146e8fe414129990029e8dfbed444953b7e14809530a')
def test_armv5(self):
self.set_machine('versatilepb')
@@ -37,11 +37,11 @@ def test_armv5(self):
drive="virtio-blk-pci")
ASSET_ARMV7_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/armv7/zImage',
- '4c7a22e9f15875bec06bd2a29d822496571eb297d4f22694099ffcdb19077572')
+ 'https://storage.tuxboot.com/buildroot/20241119/armv7/zImage',
+ '1377bc3d90de5ce57ab17cd67429fe8b15c2e9964248c775c682b67e6299b991')
ASSET_ARMV7_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/armv7/rootfs.ext4.zst',
- 'ab1fbbeaddda1ffdd45c9405a28cd5370c20f23a7cbc809cc90dc9f243a8eb5a')
+ 'https://storage.tuxboot.com/buildroot/20241119/armv7/rootfs.ext4.zst',
+ 'ed2cbc69bd6b3fbd5cafb5ee961393c7cfbe726446f14301c67d6b1f28bfdb51')
def test_armv7(self):
self.set_machine('virt')
@@ -52,11 +52,11 @@ def test_armv7(self):
rootfs_asset=self.ASSET_ARMV7_ROOTFS)
ASSET_ARMV7BE_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/armv7be/zImage',
- '7facc62082b57af12015b08f7fdbaf2f123ba07a478367853ae12b219afc9f2f')
+ 'https://storage.tuxboot.com/buildroot/20241119/armv7be/zImage',
+ 'a244e6da99f1bbd254827ec7681bd4aac9eb1aa05aaebc6b15e5d289ebb683f3')
ASSET_ARMV7BE_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/armv7be/rootfs.ext4.zst',
- '42ed46dd2d59986206c5b1f6cf35eab58fe3fd20c96b41aaa16b32f3f90a9835')
+ 'https://storage.tuxboot.com/buildroot/20241119/armv7be/rootfs.ext4.zst',
+ 'd4f9c57860a512163f30ecc69b2174d1a1bdeb853a43dc49a09cfcfe84e428ea')
def test_armv7be(self):
self.set_machine('virt')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 02/27] tests/functional: update the i386 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
2024-12-18 16:20 ` [PATCH v2 01/27] tests/functional: update the arm tuxrun tests Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 03/27] tests/functional: add a m68k " Alex Bennée
` (24 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-23-alex.bennee@linaro.org>
---
tests/functional/test_i386_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_i386_tuxrun.py b/tests/functional/test_i386_tuxrun.py
index c593ffbe8c..f3ccf11ae8 100755
--- a/tests/functional/test_i386_tuxrun.py
+++ b/tests/functional/test_i386_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunI386Test(TuxRunBaselineTest):
ASSET_I386_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/i386/bzImage',
- 'a3e5b32a354729e65910f5a1ffcda7c14a6c12a55e8213fb86e277f1b76ed956')
+ 'https://storage.tuxboot.com/buildroot/20241119/i386/bzImage',
+ '47fb44e38e34101eb0f71a2a01742b959d40ed5fd67cefb5608a39be11d3b74e')
ASSET_I386_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/i386/rootfs.ext4.zst',
- 'f15e66b2bf673a210ec2a4b2e744a80530b36289e04f5388aab812b97f69754a')
+ 'https://storage.tuxboot.com/buildroot/20241119/i386/rootfs.ext4.zst',
+ 'a1a3b3b4c9dccd6475b58db95c107b468b736b700f6620985a8ed050a73d51c8')
def test_i386(self):
self.set_machine('q35')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 03/27] tests/functional: add a m68k tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
2024-12-18 16:20 ` [PATCH v2 01/27] tests/functional: update the arm tuxrun tests Alex Bennée
2024-12-18 16:20 ` [PATCH v2 02/27] tests/functional: update the i386 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 04/27] tests/functional: update the mips32 " Alex Bennée
` (23 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
We didn't have this before and as it exercises the m68k virt platform
it seems worth adding. We don't wait for the shutdown because QEMU
will auto-exit on the shutdown.
Cc: Laurent Vivier <laurent@vivier.eu>
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-24-alex.bennee@linaro.org>
---
v2
- add to MAINTAINERS
---
MAINTAINERS | 1 +
tests/functional/meson.build | 1 +
tests/functional/test_m68k_tuxrun.py | 34 ++++++++++++++++++++++++++++
3 files changed, 36 insertions(+)
create mode 100644 tests/functional/test_m68k_tuxrun.py
diff --git a/MAINTAINERS b/MAINTAINERS
index 822f34344b..f7aa069d47 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1283,6 +1283,7 @@ F: include/hw/intc/goldfish_pic.h
F: include/hw/intc/m68k_irqc.h
F: include/hw/misc/virt_ctrl.h
F: docs/specs/virt-ctlr.rst
+F: tests/functional/test_m68k_tuxrun.py
MicroBlaze Machines
-------------------
diff --git a/tests/functional/meson.build b/tests/functional/meson.build
index 1bc5ba5229..0e1bfb8c44 100644
--- a/tests/functional/meson.build
+++ b/tests/functional/meson.build
@@ -112,6 +112,7 @@ tests_m68k_system_thorough = [
'm68k_mcf5208evb',
'm68k_nextcube',
'm68k_q800',
+ 'm68k_tuxrun',
]
tests_microblaze_system_thorough = [
diff --git a/tests/functional/test_m68k_tuxrun.py b/tests/functional/test_m68k_tuxrun.py
new file mode 100644
index 0000000000..7eacba135f
--- /dev/null
+++ b/tests/functional/test_m68k_tuxrun.py
@@ -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) 2024 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 TuxRunM68KTest(TuxRunBaselineTest):
+
+ ASSET_M68K_KERNEL = Asset(
+ 'https://storage.tuxboot.com/buildroot/20241119/m68k/vmlinux',
+ '7754e1d5cec753ccf1dc6894729a7f54c1a4965631ebf56df8e4ce1163ad19d8')
+ ASSET_M68K_ROOTFS = Asset(
+ 'https://storage.tuxboot.com/buildroot/20241119/m68k/rootfs.ext4.zst',
+ '557962ffff265607912e82232cf21adbe0e4e5a88e1e1d411ce848c37f0213e9')
+
+ def test_m68k(self):
+ self.set_machine('virt')
+ self.cpu="m68040"
+ self.common_tuxrun(kernel_asset=self.ASSET_M68K_KERNEL,
+ rootfs_asset=self.ASSET_M68K_ROOTFS,
+ drive="virtio-blk-device")
+
+if __name__ == '__main__':
+ TuxRunBaselineTest.main()
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 04/27] tests/functional: update the mips32 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (2 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 03/27] tests/functional: add a m68k " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 05/27] tests/functional: update the mips32el " Alex Bennée
` (22 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-25-alex.bennee@linaro.org>
---
tests/functional/test_mips_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_mips_tuxrun.py b/tests/functional/test_mips_tuxrun.py
index 6fec44c2bf..6771dbd57e 100755
--- a/tests/functional/test_mips_tuxrun.py
+++ b/tests/functional/test_mips_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunMipsTest(TuxRunBaselineTest):
ASSET_MIPS_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/mips32/vmlinux',
- 'bfd2172f8b17fb32970ca0c8c58f59c5a4ca38aa5855d920be3a69b5d16e52f0')
+ 'https://storage.tuxboot.com/buildroot/20241119/mips32/vmlinux',
+ 'b6f97fc698ae8c96456ad8c996c7454228074df0d7520dedd0a15e2913700a19')
ASSET_MIPS_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/mips32/rootfs.ext4.zst',
- 'fc3da0b4c2f38d74c6d705123bb0f633c76ed953128f9d0859378c328a6d11a0')
+ 'https://storage.tuxboot.com/buildroot/20241119/mips32/rootfs.ext4.zst',
+ '87055cf3cbde3fd134e5039e7b87feb03231d8c4b21ee712b8ba3308dfa72f50')
def test_mips32(self):
self.set_machine('malta')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 05/27] tests/functional: update the mips32el tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (3 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 04/27] tests/functional: update the mips32 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 06/27] tests/functional: update the mips64 " Alex Bennée
` (21 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-26-alex.bennee@linaro.org>
---
tests/functional/test_mipsel_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_mipsel_tuxrun.py b/tests/functional/test_mipsel_tuxrun.py
index 2965bbd913..d4b39baab5 100755
--- a/tests/functional/test_mipsel_tuxrun.py
+++ b/tests/functional/test_mipsel_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunMipsELTest(TuxRunBaselineTest):
ASSET_MIPSEL_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/mips32el/vmlinux',
- '8573867c68a8443db8de6d08bb33fb291c189ca2ca671471d3973a3e712096a3')
+ 'https://storage.tuxboot.com/buildroot/20241119/mips32el/vmlinux',
+ '660dd8c7a6ca7a32d37b4e6348865532ab0edb66802e8cc07869338444cf4929')
ASSET_MIPSEL_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/mips32el/rootfs.ext4.zst',
- 'e799768e289fd69209c21f4dacffa11baea7543d5db101e8ce27e3bc2c41d90e')
+ 'https://storage.tuxboot.com/buildroot/20241119/mips32el/rootfs.ext4.zst',
+ 'c5d69542bcaed54a4f34671671eb4be5c608ee02671d4d0436544367816a73b1')
def test_mips32el(self):
self.set_machine('malta')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 06/27] tests/functional: update the mips64 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (4 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 05/27] tests/functional: update the mips32el " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 07/27] tests/functional: update the mips64el " Alex Bennée
` (20 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-27-alex.bennee@linaro.org>
---
tests/functional/test_mips64_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_mips64_tuxrun.py b/tests/functional/test_mips64_tuxrun.py
index 54af1ae794..0e4c65961d 100755
--- a/tests/functional/test_mips64_tuxrun.py
+++ b/tests/functional/test_mips64_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunMips64Test(TuxRunBaselineTest):
ASSET_MIPS64_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/mips64/vmlinux',
- '09010e51e4b8bcbbd2494786ffb48eca78f228e96e5c5438344b0eac4029dc61')
+ 'https://storage.tuxboot.com/buildroot/20241119/mips64/vmlinux',
+ 'fe2882d216898ba2c56b49ba59f46ad392f36871f7fe325373cd926848b9dbdc')
ASSET_MIPS64_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/mips64/rootfs.ext4.zst',
- '69d91eeb04df3d8d172922c6993bb37d4deeb6496def75d8580f6f9de3e431da')
+ 'https://storage.tuxboot.com/buildroot/20241119/mips64/rootfs.ext4.zst',
+ 'b8c98400216b6d4fb3b3ff05e9929aa015948b596cf0b82234813c84a4f7f4d5')
def test_mips64(self):
self.set_machine('malta')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 07/27] tests/functional: update the mips64el tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (5 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 06/27] tests/functional: update the mips64 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 08/27] tests/functional: update the ppc32 " Alex Bennée
` (19 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-28-alex.bennee@linaro.org>
---
tests/functional/test_mips64el_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_mips64el_tuxrun.py b/tests/functional/test_mips64el_tuxrun.py
index 819549a27b..0a24757c51 100755
--- a/tests/functional/test_mips64el_tuxrun.py
+++ b/tests/functional/test_mips64el_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunMips64ELTest(TuxRunBaselineTest):
ASSET_MIPS64EL_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/mips64el/vmlinux',
- 'd4e08965e2155c4cccce7c5f34d18fe34c636cda2f2c9844387d614950155266')
+ 'https://storage.tuxboot.com/buildroot/20241119/mips64el/vmlinux',
+ '0d2829a96f005229839c4cd586d4d8a136ea4b488d29821611c8e97f2266bfa9')
ASSET_MIPS64EL_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/mips64el/rootfs.ext4.zst',
- 'fba585368f5915b1498ed081863474b2d7ec4e97cdd46d21bdcb2f9698f83de4')
+ 'https://storage.tuxboot.com/buildroot/20241119/mips64el/rootfs.ext4.zst',
+ '69c8b69a4f1582ce4c6f01a994968f5d73bffb2fc99cbeeeb26c8b5a28eaeb84')
def test_mips64el(self):
self.set_machine('malta')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 08/27] tests/functional: update the ppc32 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (6 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 07/27] tests/functional: update the mips64el " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 09/27] tests/functional: update the ppc64 " Alex Bennée
` (18 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-29-alex.bennee@linaro.org>
---
tests/functional/test_ppc_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_ppc_tuxrun.py b/tests/functional/test_ppc_tuxrun.py
index 50b76946c4..5458a7fb71 100755
--- a/tests/functional/test_ppc_tuxrun.py
+++ b/tests/functional/test_ppc_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunPPC32Test(TuxRunBaselineTest):
ASSET_PPC32_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/ppc32/uImage',
- '1a68f74b860fda022fb12e03c5efece8c2b8b590d96cca37a8481a3ae0b3f81f')
+ 'https://storage.tuxboot.com/buildroot/20241119/ppc32/uImage',
+ 'aa5d81deabdb255a318c4bc5ffd6fdd2b5da1ef39f1955dcc35b671d258b68e9')
ASSET_PPC32_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/ppc32/rootfs.ext4.zst',
- '8885b9d999cc24d679542a02e9b6aaf48f718f2050ece6b8347074b6ee41dd09')
+ 'https://storage.tuxboot.com/buildroot/20241119/ppc32/rootfs.ext4.zst',
+ '67554f830269d6bf53b67c7dd206bcc821e463993d526b1644066fea8117019b')
def test_ppc32(self):
self.set_machine('ppce500')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 09/27] tests/functional: update the ppc64 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (7 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 08/27] tests/functional: update the ppc32 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 10/27] tests/functional: update the riscv32 " Alex Bennée
` (17 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-30-alex.bennee@linaro.org>
---
tests/functional/test_ppc64_tuxrun.py | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/tests/functional/test_ppc64_tuxrun.py b/tests/functional/test_ppc64_tuxrun.py
index 03b47e07f2..aee67f5e90 100755
--- a/tests/functional/test_ppc64_tuxrun.py
+++ b/tests/functional/test_ppc64_tuxrun.py
@@ -82,11 +82,11 @@ def ppc64_common_tuxrun(self, kernel_asset, rootfs_asset, prefix):
drive="scsi-hd")
ASSET_PPC64_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/ppc64/vmlinux',
- 'f22a9b9e924174a4c199f4c7e5d91a2339fcfe51c6eafd0907dc3e09b64ab728')
+ 'https://storage.tuxboot.com/buildroot/20241119/ppc64/vmlinux',
+ '8219d5cb26e7654ad7826fe8aee6290f7c01eef44f2cd6d26c15fe8f99e1c17c')
ASSET_PPC64_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/ppc64/rootfs.ext4.zst',
- '1d953e81a4379e537fc8e41e05a0a59d9b453eef97aa03d47866c6c45b00bdff')
+ 'https://storage.tuxboot.com/buildroot/20241119/ppc64/rootfs.ext4.zst',
+ 'b68e12314303c5dd0fef37ae98021299a206085ae591893e73557af99a02d373')
def test_ppc64(self):
self.ppc64_common_tuxrun(kernel_asset=self.ASSET_PPC64_KERNEL,
@@ -94,11 +94,11 @@ def test_ppc64(self):
prefix='tuxrun_ppc64_')
ASSET_PPC64LE_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/ppc64le/vmlinux',
- '979eb61b445a010fb13e2b927126991f8ceef9c590fa2be0996c00e293e80cf2')
+ 'https://storage.tuxboot.com/buildroot/20241119/ppc64le/vmlinux',
+ '21aea1fbc18bf6fa7d8ca4ea48d4940b2c8363c077acd564eb47d769b7495279')
ASSET_PPC64LE_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/ppc64le/rootfs.ext4.zst',
- 'b442678c93fb8abe1f7d3bfa20556488de6b475c22c8fed363f42cf81a0a3906')
+ 'https://storage.tuxboot.com/buildroot/20241119/ppc64le/rootfs.ext4.zst',
+ '67d36a3f9597b738e8b7359bdf04500f4d9bb82fc35eaa65aa439d888b2392f4')
def test_ppc64le(self):
self.ppc64_common_tuxrun(kernel_asset=self.ASSET_PPC64LE_KERNEL,
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 10/27] tests/functional: update the riscv32 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (8 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 09/27] tests/functional: update the ppc64 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 11/27] tests/functional: update the riscv64 " Alex Bennée
` (16 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-31-alex.bennee@linaro.org>
---
tests/functional/test_riscv32_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_riscv32_tuxrun.py b/tests/functional/test_riscv32_tuxrun.py
index 49b57cd428..3c570208d0 100755
--- a/tests/functional/test_riscv32_tuxrun.py
+++ b/tests/functional/test_riscv32_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunRiscV32Test(TuxRunBaselineTest):
ASSET_RISCV32_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/riscv32/Image',
- '89599407d7334de629a40e7ad6503c73670359eb5f5ae9d686353a3d6deccbd5')
+ 'https://storage.tuxboot.com/buildroot/20241119/riscv32/Image',
+ '872bc8f8e0d4661825d5f47f7bec64988e9d0a8bd5db8917d57e16f66d83b329')
ASSET_RISCV32_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/riscv32/rootfs.ext4.zst',
- '7168d296d0283238ea73cd5a775b3dd608e55e04c7b92b76ecce31bb13108cba')
+ 'https://storage.tuxboot.com/buildroot/20241119/riscv32/rootfs.ext4.zst',
+ '511ad34e63222db08d6c1da16fad224970de36517a784110956ba6a24a0ee5f6')
def test_riscv32(self):
self.set_machine('virt')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 11/27] tests/functional: update the riscv64 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (9 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 10/27] tests/functional: update the riscv32 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 12/27] tests/functional: update the s390x " Alex Bennée
` (15 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Note we re-use the riscv32 kernel and rootfs for test_riscv64_rv32.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-32-alex.bennee@linaro.org>
---
tests/functional/test_riscv64_tuxrun.py | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/tests/functional/test_riscv64_tuxrun.py b/tests/functional/test_riscv64_tuxrun.py
index 4e2449539c..0d8de36204 100755
--- a/tests/functional/test_riscv64_tuxrun.py
+++ b/tests/functional/test_riscv64_tuxrun.py
@@ -17,18 +17,18 @@
class TuxRunRiscV64Test(TuxRunBaselineTest):
ASSET_RISCV64_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/riscv64/Image',
- 'cd634badc65e52fb63465ec99e309c0de0369f0841b7d9486f9729e119bac25e')
+ 'https://storage.tuxboot.com/buildroot/20241119/riscv64/Image',
+ '2bd8132a3bf21570290042324fff48c987f42f2a00c08de979f43f0662ebadba')
ASSET_RISCV64_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/riscv64/rootfs.ext4.zst',
- 'b18e3a3bdf27be03da0b285e84cb71bf09eca071c3a087b42884b6982ed679eb')
+ 'https://storage.tuxboot.com/buildroot/20241119/riscv64/rootfs.ext4.zst',
+ 'aa4736a9872651dfc0d95e709465eedf1134fd19d42b8cb305bfd776f9801004')
ASSET_RISCV32_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/riscv32/Image',
- '89599407d7334de629a40e7ad6503c73670359eb5f5ae9d686353a3d6deccbd5')
+ 'https://storage.tuxboot.com/buildroot/20241119/riscv32/Image',
+ '872bc8f8e0d4661825d5f47f7bec64988e9d0a8bd5db8917d57e16f66d83b329')
ASSET_RISCV32_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/riscv32/rootfs.ext4.zst',
- '7168d296d0283238ea73cd5a775b3dd608e55e04c7b92b76ecce31bb13108cba')
+ 'https://storage.tuxboot.com/buildroot/20241119/riscv32/rootfs.ext4.zst',
+ '511ad34e63222db08d6c1da16fad224970de36517a784110956ba6a24a0ee5f6')
def test_riscv64(self):
self.set_machine('virt')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 12/27] tests/functional: update the s390x tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (10 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 11/27] tests/functional: update the riscv64 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 13/27] tests/functional: update the sparc64 " Alex Bennée
` (14 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-33-alex.bennee@linaro.org>
---
tests/functional/test_s390x_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_s390x_tuxrun.py b/tests/functional/test_s390x_tuxrun.py
index dcab17c68b..a7db4bfd84 100755
--- a/tests/functional/test_s390x_tuxrun.py
+++ b/tests/functional/test_s390x_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunS390xTest(TuxRunBaselineTest):
ASSET_S390X_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/s390/bzImage',
- '0414e98dd1c3dafff8496c9cd9c28a5f8d04553bb5ba37e906a812b48d442ef0')
+ 'https://storage.tuxboot.com/buildroot/20241119/s390/bzImage',
+ 'ee67e91db52a2aed104a7c72b2a08987c678f8179c029626789c35d6dd0fedf1')
ASSET_S390X_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/s390/rootfs.ext4.zst',
- '88c37c32276677f873a25ab9ec6247895b8e3e6f8259134de2a616080b8ab3fc')
+ 'https://storage.tuxboot.com/buildroot/20241119/s390/rootfs.ext4.zst',
+ 'bff7971fc2fef56372d98afe4557b82fd0a785a241e44c29b058e577ad1bbb44')
def test_s390(self):
self.wait_for_shutdown=False
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 13/27] tests/functional: update the sparc64 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (11 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 12/27] tests/functional: update the s390x " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 14/27] tests/functional: update the x86_64 " Alex Bennée
` (13 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-34-alex.bennee@linaro.org>
---
tests/functional/test_sparc64_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_sparc64_tuxrun.py b/tests/functional/test_sparc64_tuxrun.py
index 1c2c005630..3be08d6102 100755
--- a/tests/functional/test_sparc64_tuxrun.py
+++ b/tests/functional/test_sparc64_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunSparc64Test(TuxRunBaselineTest):
ASSET_SPARC64_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/sparc64/vmlinux',
- 'e34313e4325ff21deaa3d38a502aa09a373ef62b9bd4d7f8f29388b688225c55')
+ 'https://storage.tuxboot.com/buildroot/20241119/sparc64/vmlinux',
+ 'a04cfb2e70a264051d161fdd93aabf4b2a9472f2e435c14ed18c5848c5fed261')
ASSET_SPARC64_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/sparc64/rootfs.ext4.zst',
- 'ad2f1dc436ab51583543d25d2c210cab478645d47078d30d129a66ab0e281d76')
+ 'https://storage.tuxboot.com/buildroot/20241119/sparc64/rootfs.ext4.zst',
+ '479c3dc104c82b68be55e2c0c5c38cd473d0b37ad4badccde4775bb88ce34611')
def test_sparc64(self):
self.root='sda'
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 14/27] tests/functional: update the x86_64 tuxrun tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (12 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 13/27] tests/functional: update the sparc64 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME Alex Bennée
` (12 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Anders Roxell
Now there are new up to date images available we should update to them.
Cc: Anders Roxell <anders.roxell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20241121165806.476008-35-alex.bennee@linaro.org>
---
tests/functional/test_x86_64_tuxrun.py | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/functional/test_x86_64_tuxrun.py b/tests/functional/test_x86_64_tuxrun.py
index 4f96139871..fcbc62b1b0 100755
--- a/tests/functional/test_x86_64_tuxrun.py
+++ b/tests/functional/test_x86_64_tuxrun.py
@@ -17,11 +17,11 @@
class TuxRunX86Test(TuxRunBaselineTest):
ASSET_X86_64_KERNEL = Asset(
- 'https://storage.tuxboot.com/20230331/x86_64/bzImage',
- '2bc7480a669ee9b6b82500a236aba0c54233debe98cb968268fa230f52f03461')
+ 'https://storage.tuxboot.com/buildroot/20241119/x86_64/bzImage',
+ 'f57bfc6553bcd6e0a54aab86095bf642b33b5571d14e3af1731b18c87ed5aef8')
ASSET_X86_64_ROOTFS = Asset(
- 'https://storage.tuxboot.com/20230331/x86_64/rootfs.ext4.zst',
- 'b72ac729769b8f51c6dffb221113c9a063c774dbe1d66af30eb593c4e9999b4b')
+ 'https://storage.tuxboot.com/buildroot/20241119/x86_64/rootfs.ext4.zst',
+ '4b8b2a99117519c5290e1202cb36eb6c7aaba92b357b5160f5970cf5fb78a751')
def test_x86_64(self):
self.set_machine('q35')
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (13 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 14/27] tests/functional: update the x86_64 " Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:31 ` Pierrick Bouvier
` (2 more replies)
2024-12-18 16:20 ` [PATCH v2 16/27] util/qemu-timer: fix indentation Alex Bennée
` (11 subsequent siblings)
26 siblings, 3 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée, Pierrick Bouvier
From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
This boot an OP-TEE environment, and launch a nested guest VM inside it
using the Realms feature. We do it for virt and sbsa-ref platforms.
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Message-Id: <20241203213629.2482806-1-pierrick.bouvier@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
v2
- remove version log from main commit
---
tests/functional/meson.build | 4 +
tests/functional/test_aarch64_rme_sbsaref.py | 70 +++++++++++++
tests/functional/test_aarch64_rme_virt.py | 100 +++++++++++++++++++
3 files changed, 174 insertions(+)
create mode 100755 tests/functional/test_aarch64_rme_sbsaref.py
create mode 100755 tests/functional/test_aarch64_rme_virt.py
diff --git a/tests/functional/meson.build b/tests/functional/meson.build
index 0e1bfb8c44..b49c486115 100644
--- a/tests/functional/meson.build
+++ b/tests/functional/meson.build
@@ -13,6 +13,8 @@ endif
test_timeouts = {
'aarch64_aspeed' : 600,
'aarch64_raspi4' : 480,
+ 'aarch64_rme_virt' : 1200,
+ 'aarch64_rme_sbsaref' : 1200,
'aarch64_sbsaref_alpine' : 720,
'aarch64_sbsaref_freebsd' : 720,
'aarch64_tuxrun' : 240,
@@ -58,6 +60,8 @@ tests_aarch64_system_thorough = [
'aarch64_aspeed',
'aarch64_raspi3',
'aarch64_raspi4',
+ 'aarch64_rme_virt',
+ 'aarch64_rme_sbsaref',
'aarch64_sbsaref',
'aarch64_sbsaref_alpine',
'aarch64_sbsaref_freebsd',
diff --git a/tests/functional/test_aarch64_rme_sbsaref.py b/tests/functional/test_aarch64_rme_sbsaref.py
new file mode 100755
index 0000000000..c136b5ce17
--- /dev/null
+++ b/tests/functional/test_aarch64_rme_sbsaref.py
@@ -0,0 +1,70 @@
+#!/usr/bin/env python3
+#
+# Functional test that boots a Realms environment on sbsa-ref machine and a
+# nested guest VM using it.
+#
+# Copyright (c) 2024 Linaro Ltd.
+#
+# Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+import time
+import os
+import logging
+
+from qemu_test import QemuSystemTest, Asset
+from qemu_test import exec_command, wait_for_console_pattern
+from qemu_test import exec_command_and_wait_for_pattern
+from qemu_test.utils import archive_extract
+from test_aarch64_rme_virt import test_realms_guest
+
+class Aarch64RMESbsaRefMachine(QemuSystemTest):
+
+ # Stack is built with OP-TEE build environment from those instructions:
+ # https://linaro.atlassian.net/wiki/spaces/QEMU/pages/29051027459/
+ # https://github.com/pbo-linaro/qemu-rme-stack
+ ASSET_RME_STACK_SBSA = Asset(
+ ('https://fileserver.linaro.org/s/KJyeBxL82mz2r7F/'
+ 'download/rme-stack-op-tee-4.2.0-cca-v4-sbsa.tar.gz'),
+ 'dd9ab28ec869bdf3b5376116cb3689103b43433fd5c4bca0f4a8d8b3c104999e')
+
+ # This tests the FEAT_RME cpu implementation, by booting a VM supporting it,
+ # and launching a nested VM using it.
+ def test_aarch64_rme_sbsaref(self):
+ stack_path_tar_gz = self.ASSET_RME_STACK_SBSA.fetch()
+ archive_extract(stack_path_tar_gz, self.workdir)
+
+ self.set_machine('sbsa-ref')
+ self.vm.set_console()
+ self.require_accelerator('tcg')
+
+ rme_stack = os.path.join(self.workdir,
+ 'rme-stack-op-tee-4.2.0-cca-v4-sbsa')
+ pflash0 = os.path.join(rme_stack, 'images', 'SBSA_FLASH0.fd')
+ pflash1 = os.path.join(rme_stack, 'images', 'SBSA_FLASH1.fd')
+ virtual = os.path.join(rme_stack, 'images', 'disks', 'virtual')
+ drive = os.path.join(rme_stack, 'out-br', 'images', 'rootfs.ext4')
+
+ self.vm.add_args('-cpu', 'max,x-rme=on,pauth-impdef=on')
+ self.vm.add_args('-m', '2G')
+ self.vm.add_args('-M', 'sbsa-ref')
+ self.vm.add_args('-drive', f'file={pflash0},format=raw,if=pflash')
+ self.vm.add_args('-drive', f'file={pflash1},format=raw,if=pflash')
+ self.vm.add_args('-drive', f'file=fat:rw:{virtual},format=raw')
+ self.vm.add_args('-drive', f'format=raw,if=none,file={drive},id=hd0')
+ self.vm.add_args('-device', 'virtio-blk-pci,drive=hd0')
+ self.vm.add_args('-device', 'virtio-9p-pci,fsdev=shr0,mount_tag=shr0')
+ self.vm.add_args('-fsdev', f'local,security_model=none,path={rme_stack},id=shr0')
+ self.vm.add_args('-device', 'virtio-net-pci,netdev=net0')
+ self.vm.add_args('-netdev', 'user,id=net0')
+
+ self.vm.launch()
+ # Wait for host VM boot to complete.
+ wait_for_console_pattern(self, 'Welcome to Buildroot')
+ exec_command_and_wait_for_pattern(self, 'root', '#')
+
+ test_realms_guest(self)
+
+if __name__ == '__main__':
+ QemuSystemTest.main()
diff --git a/tests/functional/test_aarch64_rme_virt.py b/tests/functional/test_aarch64_rme_virt.py
new file mode 100755
index 0000000000..39e4e4adb5
--- /dev/null
+++ b/tests/functional/test_aarch64_rme_virt.py
@@ -0,0 +1,100 @@
+#!/usr/bin/env python3
+#
+# Functional test that boots a Realms environment on virt machine and a nested
+# guest VM using it.
+#
+# Copyright (c) 2024 Linaro Ltd.
+#
+# Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
+#
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+import time
+import os
+import logging
+
+from qemu_test import QemuSystemTest, Asset
+from qemu_test import exec_command, wait_for_console_pattern
+from qemu_test import exec_command_and_wait_for_pattern
+from qemu_test.utils import archive_extract
+
+def test_realms_guest(test_rme_instance):
+
+ # Boot the (nested) guest VM
+ exec_command(test_rme_instance,
+ 'qemu-system-aarch64 -M virt,gic-version=3 '
+ '-cpu host -enable-kvm -m 512M '
+ '-M confidential-guest-support=rme0 '
+ '-object rme-guest,id=rme0 '
+ '-device virtio-net-pci,netdev=net0,romfile= '
+ '-netdev user,id=net0 '
+ '-kernel /mnt/out/bin/Image '
+ '-initrd /mnt/out-br/images/rootfs.cpio '
+ '-serial stdio')
+ # Detect Realm activation during (nested) guest boot.
+ wait_for_console_pattern(test_rme_instance,
+ 'SMC_RMI_REALM_ACTIVATE')
+ # Wait for (nested) guest boot to complete.
+ wait_for_console_pattern(test_rme_instance,
+ 'Welcome to Buildroot')
+ exec_command_and_wait_for_pattern(test_rme_instance, 'root', '#')
+ # query (nested) guest cca report
+ exec_command(test_rme_instance, 'cca-workload-attestation report')
+ wait_for_console_pattern(test_rme_instance,
+ '"cca-platform-hash-algo-id": "sha-256"')
+ wait_for_console_pattern(test_rme_instance,
+ '"cca-realm-hash-algo-id": "sha-512"')
+ wait_for_console_pattern(test_rme_instance,
+ '"cca-realm-public-key-hash-algo-id": "sha-256"')
+
+class Aarch64RMEVirtMachine(QemuSystemTest):
+
+ # Stack is built with OP-TEE build environment from those instructions:
+ # https://linaro.atlassian.net/wiki/spaces/QEMU/pages/29051027459/
+ # https://github.com/pbo-linaro/qemu-rme-stack
+ ASSET_RME_STACK_VIRT = Asset(
+ ('https://fileserver.linaro.org/s/iaRsNDJp2CXHMSJ/'
+ 'download/rme-stack-op-tee-4.2.0-cca-v4-qemu_v8.tar.gz'),
+ '1851adc232b094384d8b879b9a2cfff07ef3d6205032b85e9b3a4a9ae6b0b7ad')
+
+ # This tests the FEAT_RME cpu implementation, by booting a VM supporting it,
+ # and launching a nested VM using it.
+ def test_aarch64_rme_virt(self):
+ stack_path_tar_gz = self.ASSET_RME_STACK_VIRT.fetch()
+ archive_extract(stack_path_tar_gz, self.workdir)
+
+ self.set_machine('virt')
+ self.vm.set_console()
+ self.require_accelerator('tcg')
+
+ rme_stack = os.path.join(self.workdir,
+ 'rme-stack-op-tee-4.2.0-cca-v4-qemu_v8')
+ kernel = os.path.join(rme_stack, 'out', 'bin', 'Image')
+ bios = os.path.join(rme_stack, 'out', 'bin', 'flash.bin')
+ drive = os.path.join(rme_stack, 'out-br', 'images', 'rootfs.ext4')
+
+ self.vm.add_args('-cpu', 'max,x-rme=on,pauth-impdef=on')
+ self.vm.add_args('-m', '2G')
+ self.vm.add_args('-M', 'virt,acpi=off,'
+ 'virtualization=on,'
+ 'secure=on,'
+ 'gic-version=3')
+ self.vm.add_args('-bios', bios)
+ self.vm.add_args('-kernel', kernel)
+ self.vm.add_args('-drive', f'format=raw,if=none,file={drive},id=hd0')
+ self.vm.add_args('-device', 'virtio-blk-pci,drive=hd0')
+ self.vm.add_args('-device', 'virtio-9p-device,fsdev=shr0,mount_tag=shr0')
+ self.vm.add_args('-fsdev', f'local,security_model=none,path={rme_stack},id=shr0')
+ self.vm.add_args('-device', 'virtio-net-pci,netdev=net0')
+ self.vm.add_args('-netdev', 'user,id=net0')
+ self.vm.add_args('-append', 'root=/dev/vda')
+
+ self.vm.launch()
+ # Wait for host VM boot to complete.
+ wait_for_console_pattern(self, 'Welcome to Buildroot')
+ exec_command_and_wait_for_pattern(self, 'root', '#')
+
+ test_realms_guest(self)
+
+if __name__ == '__main__':
+ QemuSystemTest.main()
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* Re: [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME
2024-12-18 16:20 ` [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME Alex Bennée
@ 2024-12-18 16:31 ` Pierrick Bouvier
2024-12-19 19:56 ` Pierrick Bouvier
2024-12-20 16:54 ` Pierrick Bouvier
2 siblings, 0 replies; 38+ messages in thread
From: Pierrick Bouvier @ 2024-12-18 16:31 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis
On 12/18/24 08:20, Alex Bennée wrote:
> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>
> This boot an OP-TEE environment, and launch a nested guest VM inside it
> using the Realms feature. We do it for virt and sbsa-ref platforms.
>
> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> Message-Id: <20241203213629.2482806-1-pierrick.bouvier@linaro.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>
> ---
> v2
> - remove version log from main commit
> ---
> tests/functional/meson.build | 4 +
> tests/functional/test_aarch64_rme_sbsaref.py | 70 +++++++++++++
> tests/functional/test_aarch64_rme_virt.py | 100 +++++++++++++++++++
> 3 files changed, 174 insertions(+)
> create mode 100755 tests/functional/test_aarch64_rme_sbsaref.py
> create mode 100755 tests/functional/test_aarch64_rme_virt.py
>
> diff --git a/tests/functional/meson.build b/tests/functional/meson.build
> index 0e1bfb8c44..b49c486115 100644
> --- a/tests/functional/meson.build
> +++ b/tests/functional/meson.build
> @@ -13,6 +13,8 @@ endif
> test_timeouts = {
> 'aarch64_aspeed' : 600,
> 'aarch64_raspi4' : 480,
> + 'aarch64_rme_virt' : 1200,
> + 'aarch64_rme_sbsaref' : 1200,
> 'aarch64_sbsaref_alpine' : 720,
> 'aarch64_sbsaref_freebsd' : 720,
> 'aarch64_tuxrun' : 240,
> @@ -58,6 +60,8 @@ tests_aarch64_system_thorough = [
> 'aarch64_aspeed',
> 'aarch64_raspi3',
> 'aarch64_raspi4',
> + 'aarch64_rme_virt',
> + 'aarch64_rme_sbsaref',
> 'aarch64_sbsaref',
> 'aarch64_sbsaref_alpine',
> 'aarch64_sbsaref_freebsd',
> diff --git a/tests/functional/test_aarch64_rme_sbsaref.py b/tests/functional/test_aarch64_rme_sbsaref.py
> new file mode 100755
> index 0000000000..c136b5ce17
> --- /dev/null
> +++ b/tests/functional/test_aarch64_rme_sbsaref.py
> @@ -0,0 +1,70 @@
> +#!/usr/bin/env python3
> +#
> +# Functional test that boots a Realms environment on sbsa-ref machine and a
> +# nested guest VM using it.
> +#
> +# Copyright (c) 2024 Linaro Ltd.
> +#
> +# Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> +#
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +
> +import time
> +import os
> +import logging
> +
> +from qemu_test import QemuSystemTest, Asset
> +from qemu_test import exec_command, wait_for_console_pattern
> +from qemu_test import exec_command_and_wait_for_pattern
> +from qemu_test.utils import archive_extract
> +from test_aarch64_rme_virt import test_realms_guest
> +
> +class Aarch64RMESbsaRefMachine(QemuSystemTest):
> +
> + # Stack is built with OP-TEE build environment from those instructions:
> + # https://linaro.atlassian.net/wiki/spaces/QEMU/pages/29051027459/
> + # https://github.com/pbo-linaro/qemu-rme-stack
> + ASSET_RME_STACK_SBSA = Asset(
> + ('https://fileserver.linaro.org/s/KJyeBxL82mz2r7F/'
> + 'download/rme-stack-op-tee-4.2.0-cca-v4-sbsa.tar.gz'),
> + 'dd9ab28ec869bdf3b5376116cb3689103b43433fd5c4bca0f4a8d8b3c104999e')
> +
> + # This tests the FEAT_RME cpu implementation, by booting a VM supporting it,
> + # and launching a nested VM using it.
> + def test_aarch64_rme_sbsaref(self):
> + stack_path_tar_gz = self.ASSET_RME_STACK_SBSA.fetch()
> + archive_extract(stack_path_tar_gz, self.workdir)
> +
> + self.set_machine('sbsa-ref')
> + self.vm.set_console()
> + self.require_accelerator('tcg')
> +
> + rme_stack = os.path.join(self.workdir,
> + 'rme-stack-op-tee-4.2.0-cca-v4-sbsa')
> + pflash0 = os.path.join(rme_stack, 'images', 'SBSA_FLASH0.fd')
> + pflash1 = os.path.join(rme_stack, 'images', 'SBSA_FLASH1.fd')
> + virtual = os.path.join(rme_stack, 'images', 'disks', 'virtual')
> + drive = os.path.join(rme_stack, 'out-br', 'images', 'rootfs.ext4')
> +
> + self.vm.add_args('-cpu', 'max,x-rme=on,pauth-impdef=on')
> + self.vm.add_args('-m', '2G')
> + self.vm.add_args('-M', 'sbsa-ref')
> + self.vm.add_args('-drive', f'file={pflash0},format=raw,if=pflash')
> + self.vm.add_args('-drive', f'file={pflash1},format=raw,if=pflash')
> + self.vm.add_args('-drive', f'file=fat:rw:{virtual},format=raw')
> + self.vm.add_args('-drive', f'format=raw,if=none,file={drive},id=hd0')
> + self.vm.add_args('-device', 'virtio-blk-pci,drive=hd0')
> + self.vm.add_args('-device', 'virtio-9p-pci,fsdev=shr0,mount_tag=shr0')
> + self.vm.add_args('-fsdev', f'local,security_model=none,path={rme_stack},id=shr0')
> + self.vm.add_args('-device', 'virtio-net-pci,netdev=net0')
> + self.vm.add_args('-netdev', 'user,id=net0')
> +
> + self.vm.launch()
> + # Wait for host VM boot to complete.
> + wait_for_console_pattern(self, 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(self, 'root', '#')
> +
> + test_realms_guest(self)
> +
> +if __name__ == '__main__':
> + QemuSystemTest.main()
> diff --git a/tests/functional/test_aarch64_rme_virt.py b/tests/functional/test_aarch64_rme_virt.py
> new file mode 100755
> index 0000000000..39e4e4adb5
> --- /dev/null
> +++ b/tests/functional/test_aarch64_rme_virt.py
> @@ -0,0 +1,100 @@
> +#!/usr/bin/env python3
> +#
> +# Functional test that boots a Realms environment on virt machine and a nested
> +# guest VM using it.
> +#
> +# Copyright (c) 2024 Linaro Ltd.
> +#
> +# Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> +#
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +
> +import time
> +import os
> +import logging
> +
> +from qemu_test import QemuSystemTest, Asset
> +from qemu_test import exec_command, wait_for_console_pattern
> +from qemu_test import exec_command_and_wait_for_pattern
> +from qemu_test.utils import archive_extract
> +
> +def test_realms_guest(test_rme_instance):
> +
> + # Boot the (nested) guest VM
> + exec_command(test_rme_instance,
> + 'qemu-system-aarch64 -M virt,gic-version=3 '
> + '-cpu host -enable-kvm -m 512M '
> + '-M confidential-guest-support=rme0 '
> + '-object rme-guest,id=rme0 '
> + '-device virtio-net-pci,netdev=net0,romfile= '
> + '-netdev user,id=net0 '
> + '-kernel /mnt/out/bin/Image '
> + '-initrd /mnt/out-br/images/rootfs.cpio '
> + '-serial stdio')
> + # Detect Realm activation during (nested) guest boot.
> + wait_for_console_pattern(test_rme_instance,
> + 'SMC_RMI_REALM_ACTIVATE')
> + # Wait for (nested) guest boot to complete.
> + wait_for_console_pattern(test_rme_instance,
> + 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(test_rme_instance, 'root', '#')
> + # query (nested) guest cca report
> + exec_command(test_rme_instance, 'cca-workload-attestation report')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-platform-hash-algo-id": "sha-256"')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-realm-hash-algo-id": "sha-512"')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-realm-public-key-hash-algo-id": "sha-256"')
> +
> +class Aarch64RMEVirtMachine(QemuSystemTest):
> +
> + # Stack is built with OP-TEE build environment from those instructions:
> + # https://linaro.atlassian.net/wiki/spaces/QEMU/pages/29051027459/
> + # https://github.com/pbo-linaro/qemu-rme-stack
> + ASSET_RME_STACK_VIRT = Asset(
> + ('https://fileserver.linaro.org/s/iaRsNDJp2CXHMSJ/'
> + 'download/rme-stack-op-tee-4.2.0-cca-v4-qemu_v8.tar.gz'),
> + '1851adc232b094384d8b879b9a2cfff07ef3d6205032b85e9b3a4a9ae6b0b7ad')
> +
> + # This tests the FEAT_RME cpu implementation, by booting a VM supporting it,
> + # and launching a nested VM using it.
> + def test_aarch64_rme_virt(self):
> + stack_path_tar_gz = self.ASSET_RME_STACK_VIRT.fetch()
> + archive_extract(stack_path_tar_gz, self.workdir)
> +
> + self.set_machine('virt')
> + self.vm.set_console()
> + self.require_accelerator('tcg')
> +
> + rme_stack = os.path.join(self.workdir,
> + 'rme-stack-op-tee-4.2.0-cca-v4-qemu_v8')
> + kernel = os.path.join(rme_stack, 'out', 'bin', 'Image')
> + bios = os.path.join(rme_stack, 'out', 'bin', 'flash.bin')
> + drive = os.path.join(rme_stack, 'out-br', 'images', 'rootfs.ext4')
> +
> + self.vm.add_args('-cpu', 'max,x-rme=on,pauth-impdef=on')
> + self.vm.add_args('-m', '2G')
> + self.vm.add_args('-M', 'virt,acpi=off,'
> + 'virtualization=on,'
> + 'secure=on,'
> + 'gic-version=3')
> + self.vm.add_args('-bios', bios)
> + self.vm.add_args('-kernel', kernel)
> + self.vm.add_args('-drive', f'format=raw,if=none,file={drive},id=hd0')
> + self.vm.add_args('-device', 'virtio-blk-pci,drive=hd0')
> + self.vm.add_args('-device', 'virtio-9p-device,fsdev=shr0,mount_tag=shr0')
> + self.vm.add_args('-fsdev', f'local,security_model=none,path={rme_stack},id=shr0')
> + self.vm.add_args('-device', 'virtio-net-pci,netdev=net0')
> + self.vm.add_args('-netdev', 'user,id=net0')
> + self.vm.add_args('-append', 'root=/dev/vda')
> +
> + self.vm.launch()
> + # Wait for host VM boot to complete.
> + wait_for_console_pattern(self, 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(self, 'root', '#')
> +
> + test_realms_guest(self)
> +
> +if __name__ == '__main__':
> + QemuSystemTest.main()
You might want to add this patch [1] to the series, that fixes a ubsan
issue that this specific test triggered.
[1]
https://lore.kernel.org/qemu-devel/3f6f2d79-753a-4dc4-8ff5-6eb6c801a9c7@linaro.org/
^ permalink raw reply [flat|nested] 38+ messages in thread* Re: [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME
2024-12-18 16:20 ` [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME Alex Bennée
2024-12-18 16:31 ` Pierrick Bouvier
@ 2024-12-19 19:56 ` Pierrick Bouvier
2024-12-20 16:54 ` Pierrick Bouvier
2 siblings, 0 replies; 38+ messages in thread
From: Pierrick Bouvier @ 2024-12-19 19:56 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis
On 12/18/24 08:20, Alex Bennée wrote:
> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>
> This boot an OP-TEE environment, and launch a nested guest VM inside it
> using the Realms feature. We do it for virt and sbsa-ref platforms.
>
> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> Message-Id: <20241203213629.2482806-1-pierrick.bouvier@linaro.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>
> ---
> v2
> - remove version log from main commit
> ---
> tests/functional/meson.build | 4 +
> tests/functional/test_aarch64_rme_sbsaref.py | 70 +++++++++++++
> tests/functional/test_aarch64_rme_virt.py | 100 +++++++++++++++++++
> 3 files changed, 174 insertions(+)
> create mode 100755 tests/functional/test_aarch64_rme_sbsaref.py
> create mode 100755 tests/functional/test_aarch64_rme_virt.py
>
> diff --git a/tests/functional/meson.build b/tests/functional/meson.build
> index 0e1bfb8c44..b49c486115 100644
> --- a/tests/functional/meson.build
> +++ b/tests/functional/meson.build
> @@ -13,6 +13,8 @@ endif
> test_timeouts = {
> 'aarch64_aspeed' : 600,
> 'aarch64_raspi4' : 480,
> + 'aarch64_rme_virt' : 1200,
> + 'aarch64_rme_sbsaref' : 1200,
> 'aarch64_sbsaref_alpine' : 720,
> 'aarch64_sbsaref_freebsd' : 720,
> 'aarch64_tuxrun' : 240,
> @@ -58,6 +60,8 @@ tests_aarch64_system_thorough = [
> 'aarch64_aspeed',
> 'aarch64_raspi3',
> 'aarch64_raspi4',
> + 'aarch64_rme_virt',
> + 'aarch64_rme_sbsaref',
> 'aarch64_sbsaref',
> 'aarch64_sbsaref_alpine',
> 'aarch64_sbsaref_freebsd',
> diff --git a/tests/functional/test_aarch64_rme_sbsaref.py b/tests/functional/test_aarch64_rme_sbsaref.py
> new file mode 100755
> index 0000000000..c136b5ce17
> --- /dev/null
> +++ b/tests/functional/test_aarch64_rme_sbsaref.py
> @@ -0,0 +1,70 @@
> +#!/usr/bin/env python3
> +#
> +# Functional test that boots a Realms environment on sbsa-ref machine and a
> +# nested guest VM using it.
> +#
> +# Copyright (c) 2024 Linaro Ltd.
> +#
> +# Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> +#
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +
> +import time
> +import os
> +import logging
> +
> +from qemu_test import QemuSystemTest, Asset
> +from qemu_test import exec_command, wait_for_console_pattern
> +from qemu_test import exec_command_and_wait_for_pattern
> +from qemu_test.utils import archive_extract
> +from test_aarch64_rme_virt import test_realms_guest
> +
> +class Aarch64RMESbsaRefMachine(QemuSystemTest):
> +
> + # Stack is built with OP-TEE build environment from those instructions:
> + # https://linaro.atlassian.net/wiki/spaces/QEMU/pages/29051027459/
> + # https://github.com/pbo-linaro/qemu-rme-stack
> + ASSET_RME_STACK_SBSA = Asset(
> + ('https://fileserver.linaro.org/s/KJyeBxL82mz2r7F/'
> + 'download/rme-stack-op-tee-4.2.0-cca-v4-sbsa.tar.gz'),
> + 'dd9ab28ec869bdf3b5376116cb3689103b43433fd5c4bca0f4a8d8b3c104999e')
> +
> + # This tests the FEAT_RME cpu implementation, by booting a VM supporting it,
> + # and launching a nested VM using it.
> + def test_aarch64_rme_sbsaref(self):
> + stack_path_tar_gz = self.ASSET_RME_STACK_SBSA.fetch()
> + archive_extract(stack_path_tar_gz, self.workdir)
> +
> + self.set_machine('sbsa-ref')
> + self.vm.set_console()
> + self.require_accelerator('tcg')
> +
> + rme_stack = os.path.join(self.workdir,
> + 'rme-stack-op-tee-4.2.0-cca-v4-sbsa')
> + pflash0 = os.path.join(rme_stack, 'images', 'SBSA_FLASH0.fd')
> + pflash1 = os.path.join(rme_stack, 'images', 'SBSA_FLASH1.fd')
> + virtual = os.path.join(rme_stack, 'images', 'disks', 'virtual')
> + drive = os.path.join(rme_stack, 'out-br', 'images', 'rootfs.ext4')
> +
> + self.vm.add_args('-cpu', 'max,x-rme=on,pauth-impdef=on')
> + self.vm.add_args('-m', '2G')
> + self.vm.add_args('-M', 'sbsa-ref')
> + self.vm.add_args('-drive', f'file={pflash0},format=raw,if=pflash')
> + self.vm.add_args('-drive', f'file={pflash1},format=raw,if=pflash')
> + self.vm.add_args('-drive', f'file=fat:rw:{virtual},format=raw')
> + self.vm.add_args('-drive', f'format=raw,if=none,file={drive},id=hd0')
> + self.vm.add_args('-device', 'virtio-blk-pci,drive=hd0')
> + self.vm.add_args('-device', 'virtio-9p-pci,fsdev=shr0,mount_tag=shr0')
> + self.vm.add_args('-fsdev', f'local,security_model=none,path={rme_stack},id=shr0')
> + self.vm.add_args('-device', 'virtio-net-pci,netdev=net0')
> + self.vm.add_args('-netdev', 'user,id=net0')
> +
> + self.vm.launch()
> + # Wait for host VM boot to complete.
> + wait_for_console_pattern(self, 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(self, 'root', '#')
> +
> + test_realms_guest(self)
> +
> +if __name__ == '__main__':
> + QemuSystemTest.main()
> diff --git a/tests/functional/test_aarch64_rme_virt.py b/tests/functional/test_aarch64_rme_virt.py
> new file mode 100755
> index 0000000000..39e4e4adb5
> --- /dev/null
> +++ b/tests/functional/test_aarch64_rme_virt.py
> @@ -0,0 +1,100 @@
> +#!/usr/bin/env python3
> +#
> +# Functional test that boots a Realms environment on virt machine and a nested
> +# guest VM using it.
> +#
> +# Copyright (c) 2024 Linaro Ltd.
> +#
> +# Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> +#
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +
> +import time
> +import os
> +import logging
> +
> +from qemu_test import QemuSystemTest, Asset
> +from qemu_test import exec_command, wait_for_console_pattern
> +from qemu_test import exec_command_and_wait_for_pattern
> +from qemu_test.utils import archive_extract
> +
> +def test_realms_guest(test_rme_instance):
> +
> + # Boot the (nested) guest VM
> + exec_command(test_rme_instance,
> + 'qemu-system-aarch64 -M virt,gic-version=3 '
> + '-cpu host -enable-kvm -m 512M '
> + '-M confidential-guest-support=rme0 '
> + '-object rme-guest,id=rme0 '
> + '-device virtio-net-pci,netdev=net0,romfile= '
> + '-netdev user,id=net0 '
> + '-kernel /mnt/out/bin/Image '
> + '-initrd /mnt/out-br/images/rootfs.cpio '
> + '-serial stdio')
> + # Detect Realm activation during (nested) guest boot.
> + wait_for_console_pattern(test_rme_instance,
> + 'SMC_RMI_REALM_ACTIVATE')
> + # Wait for (nested) guest boot to complete.
> + wait_for_console_pattern(test_rme_instance,
> + 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(test_rme_instance, 'root', '#')
> + # query (nested) guest cca report
> + exec_command(test_rme_instance, 'cca-workload-attestation report')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-platform-hash-algo-id": "sha-256"')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-realm-hash-algo-id": "sha-512"')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-realm-public-key-hash-algo-id": "sha-256"')
> +
> +class Aarch64RMEVirtMachine(QemuSystemTest):
> +
> + # Stack is built with OP-TEE build environment from those instructions:
> + # https://linaro.atlassian.net/wiki/spaces/QEMU/pages/29051027459/
> + # https://github.com/pbo-linaro/qemu-rme-stack
> + ASSET_RME_STACK_VIRT = Asset(
> + ('https://fileserver.linaro.org/s/iaRsNDJp2CXHMSJ/'
> + 'download/rme-stack-op-tee-4.2.0-cca-v4-qemu_v8.tar.gz'),
> + '1851adc232b094384d8b879b9a2cfff07ef3d6205032b85e9b3a4a9ae6b0b7ad')
> +
> + # This tests the FEAT_RME cpu implementation, by booting a VM supporting it,
> + # and launching a nested VM using it.
> + def test_aarch64_rme_virt(self):
> + stack_path_tar_gz = self.ASSET_RME_STACK_VIRT.fetch()
> + archive_extract(stack_path_tar_gz, self.workdir)
> +
> + self.set_machine('virt')
> + self.vm.set_console()
> + self.require_accelerator('tcg')
> +
> + rme_stack = os.path.join(self.workdir,
> + 'rme-stack-op-tee-4.2.0-cca-v4-qemu_v8')
> + kernel = os.path.join(rme_stack, 'out', 'bin', 'Image')
> + bios = os.path.join(rme_stack, 'out', 'bin', 'flash.bin')
> + drive = os.path.join(rme_stack, 'out-br', 'images', 'rootfs.ext4')
> +
> + self.vm.add_args('-cpu', 'max,x-rme=on,pauth-impdef=on')
> + self.vm.add_args('-m', '2G')
> + self.vm.add_args('-M', 'virt,acpi=off,'
> + 'virtualization=on,'
> + 'secure=on,'
> + 'gic-version=3')
> + self.vm.add_args('-bios', bios)
> + self.vm.add_args('-kernel', kernel)
> + self.vm.add_args('-drive', f'format=raw,if=none,file={drive},id=hd0')
> + self.vm.add_args('-device', 'virtio-blk-pci,drive=hd0')
> + self.vm.add_args('-device', 'virtio-9p-device,fsdev=shr0,mount_tag=shr0')
> + self.vm.add_args('-fsdev', f'local,security_model=none,path={rme_stack},id=shr0')
> + self.vm.add_args('-device', 'virtio-net-pci,netdev=net0')
> + self.vm.add_args('-netdev', 'user,id=net0')
> + self.vm.add_args('-append', 'root=/dev/vda')
> +
> + self.vm.launch()
> + # Wait for host VM boot to complete.
> + wait_for_console_pattern(self, 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(self, 'root', '#')
> +
> + test_realms_guest(self)
> +
> +if __name__ == '__main__':
> + QemuSystemTest.main()
This test was broken by a recent change (new archive_extract helper).
The new version is available here:
https://lore.kernel.org/qemu-devel/20241219195304.3548246-1-pierrick.bouvier@linaro.org/T/#u
^ permalink raw reply [flat|nested] 38+ messages in thread* Re: [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME
2024-12-18 16:20 ` [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME Alex Bennée
2024-12-18 16:31 ` Pierrick Bouvier
2024-12-19 19:56 ` Pierrick Bouvier
@ 2024-12-20 16:54 ` Pierrick Bouvier
2 siblings, 0 replies; 38+ messages in thread
From: Pierrick Bouvier @ 2024-12-20 16:54 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis
On 12/18/24 08:20, Alex Bennée wrote:
> From: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>
> This boot an OP-TEE environment, and launch a nested guest VM inside it
> using the Realms feature. We do it for virt and sbsa-ref platforms.
>
> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> Message-Id: <20241203213629.2482806-1-pierrick.bouvier@linaro.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>
> ---
> v2
> - remove version log from main commit
> ---
> tests/functional/meson.build | 4 +
> tests/functional/test_aarch64_rme_sbsaref.py | 70 +++++++++++++
> tests/functional/test_aarch64_rme_virt.py | 100 +++++++++++++++++++
> 3 files changed, 174 insertions(+)
> create mode 100755 tests/functional/test_aarch64_rme_sbsaref.py
> create mode 100755 tests/functional/test_aarch64_rme_virt.py
>
> diff --git a/tests/functional/meson.build b/tests/functional/meson.build
> index 0e1bfb8c44..b49c486115 100644
> --- a/tests/functional/meson.build
> +++ b/tests/functional/meson.build
> @@ -13,6 +13,8 @@ endif
> test_timeouts = {
> 'aarch64_aspeed' : 600,
> 'aarch64_raspi4' : 480,
> + 'aarch64_rme_virt' : 1200,
> + 'aarch64_rme_sbsaref' : 1200,
> 'aarch64_sbsaref_alpine' : 720,
> 'aarch64_sbsaref_freebsd' : 720,
> 'aarch64_tuxrun' : 240,
> @@ -58,6 +60,8 @@ tests_aarch64_system_thorough = [
> 'aarch64_aspeed',
> 'aarch64_raspi3',
> 'aarch64_raspi4',
> + 'aarch64_rme_virt',
> + 'aarch64_rme_sbsaref',
> 'aarch64_sbsaref',
> 'aarch64_sbsaref_alpine',
> 'aarch64_sbsaref_freebsd',
> diff --git a/tests/functional/test_aarch64_rme_sbsaref.py b/tests/functional/test_aarch64_rme_sbsaref.py
> new file mode 100755
> index 0000000000..c136b5ce17
> --- /dev/null
> +++ b/tests/functional/test_aarch64_rme_sbsaref.py
> @@ -0,0 +1,70 @@
> +#!/usr/bin/env python3
> +#
> +# Functional test that boots a Realms environment on sbsa-ref machine and a
> +# nested guest VM using it.
> +#
> +# Copyright (c) 2024 Linaro Ltd.
> +#
> +# Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> +#
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +
> +import time
> +import os
> +import logging
> +
> +from qemu_test import QemuSystemTest, Asset
> +from qemu_test import exec_command, wait_for_console_pattern
> +from qemu_test import exec_command_and_wait_for_pattern
> +from qemu_test.utils import archive_extract
> +from test_aarch64_rme_virt import test_realms_guest
> +
> +class Aarch64RMESbsaRefMachine(QemuSystemTest):
> +
> + # Stack is built with OP-TEE build environment from those instructions:
> + # https://linaro.atlassian.net/wiki/spaces/QEMU/pages/29051027459/
> + # https://github.com/pbo-linaro/qemu-rme-stack
> + ASSET_RME_STACK_SBSA = Asset(
> + ('https://fileserver.linaro.org/s/KJyeBxL82mz2r7F/'
> + 'download/rme-stack-op-tee-4.2.0-cca-v4-sbsa.tar.gz'),
> + 'dd9ab28ec869bdf3b5376116cb3689103b43433fd5c4bca0f4a8d8b3c104999e')
> +
> + # This tests the FEAT_RME cpu implementation, by booting a VM supporting it,
> + # and launching a nested VM using it.
> + def test_aarch64_rme_sbsaref(self):
> + stack_path_tar_gz = self.ASSET_RME_STACK_SBSA.fetch()
> + archive_extract(stack_path_tar_gz, self.workdir)
> +
> + self.set_machine('sbsa-ref')
> + self.vm.set_console()
> + self.require_accelerator('tcg')
> +
> + rme_stack = os.path.join(self.workdir,
> + 'rme-stack-op-tee-4.2.0-cca-v4-sbsa')
> + pflash0 = os.path.join(rme_stack, 'images', 'SBSA_FLASH0.fd')
> + pflash1 = os.path.join(rme_stack, 'images', 'SBSA_FLASH1.fd')
> + virtual = os.path.join(rme_stack, 'images', 'disks', 'virtual')
> + drive = os.path.join(rme_stack, 'out-br', 'images', 'rootfs.ext4')
> +
> + self.vm.add_args('-cpu', 'max,x-rme=on,pauth-impdef=on')
> + self.vm.add_args('-m', '2G')
> + self.vm.add_args('-M', 'sbsa-ref')
> + self.vm.add_args('-drive', f'file={pflash0},format=raw,if=pflash')
> + self.vm.add_args('-drive', f'file={pflash1},format=raw,if=pflash')
> + self.vm.add_args('-drive', f'file=fat:rw:{virtual},format=raw')
> + self.vm.add_args('-drive', f'format=raw,if=none,file={drive},id=hd0')
> + self.vm.add_args('-device', 'virtio-blk-pci,drive=hd0')
> + self.vm.add_args('-device', 'virtio-9p-pci,fsdev=shr0,mount_tag=shr0')
> + self.vm.add_args('-fsdev', f'local,security_model=none,path={rme_stack},id=shr0')
> + self.vm.add_args('-device', 'virtio-net-pci,netdev=net0')
> + self.vm.add_args('-netdev', 'user,id=net0')
> +
> + self.vm.launch()
> + # Wait for host VM boot to complete.
> + wait_for_console_pattern(self, 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(self, 'root', '#')
> +
> + test_realms_guest(self)
> +
> +if __name__ == '__main__':
> + QemuSystemTest.main()
> diff --git a/tests/functional/test_aarch64_rme_virt.py b/tests/functional/test_aarch64_rme_virt.py
> new file mode 100755
> index 0000000000..39e4e4adb5
> --- /dev/null
> +++ b/tests/functional/test_aarch64_rme_virt.py
> @@ -0,0 +1,100 @@
> +#!/usr/bin/env python3
> +#
> +# Functional test that boots a Realms environment on virt machine and a nested
> +# guest VM using it.
> +#
> +# Copyright (c) 2024 Linaro Ltd.
> +#
> +# Author: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> +#
> +# SPDX-License-Identifier: GPL-2.0-or-later
> +
> +import time
> +import os
> +import logging
> +
> +from qemu_test import QemuSystemTest, Asset
> +from qemu_test import exec_command, wait_for_console_pattern
> +from qemu_test import exec_command_and_wait_for_pattern
> +from qemu_test.utils import archive_extract
> +
> +def test_realms_guest(test_rme_instance):
> +
> + # Boot the (nested) guest VM
> + exec_command(test_rme_instance,
> + 'qemu-system-aarch64 -M virt,gic-version=3 '
> + '-cpu host -enable-kvm -m 512M '
> + '-M confidential-guest-support=rme0 '
> + '-object rme-guest,id=rme0 '
> + '-device virtio-net-pci,netdev=net0,romfile= '
> + '-netdev user,id=net0 '
> + '-kernel /mnt/out/bin/Image '
> + '-initrd /mnt/out-br/images/rootfs.cpio '
> + '-serial stdio')
> + # Detect Realm activation during (nested) guest boot.
> + wait_for_console_pattern(test_rme_instance,
> + 'SMC_RMI_REALM_ACTIVATE')
> + # Wait for (nested) guest boot to complete.
> + wait_for_console_pattern(test_rme_instance,
> + 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(test_rme_instance, 'root', '#')
> + # query (nested) guest cca report
> + exec_command(test_rme_instance, 'cca-workload-attestation report')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-platform-hash-algo-id": "sha-256"')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-realm-hash-algo-id": "sha-512"')
> + wait_for_console_pattern(test_rme_instance,
> + '"cca-realm-public-key-hash-algo-id": "sha-256"')
> +
> +class Aarch64RMEVirtMachine(QemuSystemTest):
> +
> + # Stack is built with OP-TEE build environment from those instructions:
> + # https://linaro.atlassian.net/wiki/spaces/QEMU/pages/29051027459/
> + # https://github.com/pbo-linaro/qemu-rme-stack
> + ASSET_RME_STACK_VIRT = Asset(
> + ('https://fileserver.linaro.org/s/iaRsNDJp2CXHMSJ/'
> + 'download/rme-stack-op-tee-4.2.0-cca-v4-qemu_v8.tar.gz'),
> + '1851adc232b094384d8b879b9a2cfff07ef3d6205032b85e9b3a4a9ae6b0b7ad')
> +
> + # This tests the FEAT_RME cpu implementation, by booting a VM supporting it,
> + # and launching a nested VM using it.
> + def test_aarch64_rme_virt(self):
> + stack_path_tar_gz = self.ASSET_RME_STACK_VIRT.fetch()
> + archive_extract(stack_path_tar_gz, self.workdir)
> +
> + self.set_machine('virt')
> + self.vm.set_console()
> + self.require_accelerator('tcg')
> +
> + rme_stack = os.path.join(self.workdir,
> + 'rme-stack-op-tee-4.2.0-cca-v4-qemu_v8')
> + kernel = os.path.join(rme_stack, 'out', 'bin', 'Image')
> + bios = os.path.join(rme_stack, 'out', 'bin', 'flash.bin')
> + drive = os.path.join(rme_stack, 'out-br', 'images', 'rootfs.ext4')
> +
> + self.vm.add_args('-cpu', 'max,x-rme=on,pauth-impdef=on')
> + self.vm.add_args('-m', '2G')
> + self.vm.add_args('-M', 'virt,acpi=off,'
> + 'virtualization=on,'
> + 'secure=on,'
> + 'gic-version=3')
> + self.vm.add_args('-bios', bios)
> + self.vm.add_args('-kernel', kernel)
> + self.vm.add_args('-drive', f'format=raw,if=none,file={drive},id=hd0')
> + self.vm.add_args('-device', 'virtio-blk-pci,drive=hd0')
> + self.vm.add_args('-device', 'virtio-9p-device,fsdev=shr0,mount_tag=shr0')
> + self.vm.add_args('-fsdev', f'local,security_model=none,path={rme_stack},id=shr0')
> + self.vm.add_args('-device', 'virtio-net-pci,netdev=net0')
> + self.vm.add_args('-netdev', 'user,id=net0')
> + self.vm.add_args('-append', 'root=/dev/vda')
> +
> + self.vm.launch()
> + # Wait for host VM boot to complete.
> + wait_for_console_pattern(self, 'Welcome to Buildroot')
> + exec_command_and_wait_for_pattern(self, 'root', '#')
> +
> + test_realms_guest(self)
> +
> +if __name__ == '__main__':
> + QemuSystemTest.main()
It needed another fix with the qemu_test changes, so there is a v6:
https://lore.kernel.org/qemu-devel/20241220165212.3653495-1-pierrick.bouvier@linaro.org/T/#u
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH v2 16/27] util/qemu-timer: fix indentation
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (14 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 15/27] tests/functional/aarch64: add tests for FEAT_RME Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-19 17:30 ` Philippe Mathieu-Daudé
2024-12-18 16:20 ` [PATCH v2 17/27] tests/qtest: remove clock_steps from virtio tests Alex Bennée
` (10 subsequent siblings)
26 siblings, 1 reply; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
Purely cosmetic.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
util/qemu-timer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/util/qemu-timer.c b/util/qemu-timer.c
index ffe9a3c5c1..7b71655416 100644
--- a/util/qemu-timer.c
+++ b/util/qemu-timer.c
@@ -680,7 +680,7 @@ int64_t qemu_clock_advance_virtual_time(int64_t dest)
aio_context = qemu_get_aio_context();
deadline = qemu_clock_deadline_ns_all(QEMU_CLOCK_VIRTUAL,
- QEMU_TIMER_ATTR_ALL);
+ QEMU_TIMER_ATTR_ALL);
/*
* A deadline of < 0 indicates this timer is not enabled, so we
* won't get far trying to run it forward.
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* Re: [PATCH v2 16/27] util/qemu-timer: fix indentation
2024-12-18 16:20 ` [PATCH v2 16/27] util/qemu-timer: fix indentation Alex Bennée
@ 2024-12-19 17:30 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 38+ messages in thread
From: Philippe Mathieu-Daudé @ 2024-12-19 17:30 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, qemu-riscv, Nicholas Piggin, Joel Stanley,
Beraldo Leal, Markus Armbruster, Jiaxun Yang, Weiwei Li,
Peter Maydell, Cleber Rosa, Leif Lindholm, Christian Borntraeger,
John Snow, Marcel Apfelbaum, Palmer Dabbelt, Bin Meng,
Daniel Henrique Barboza, Paolo Bonzini, Liu Zhiwei,
Wainer dos Santos Moschetta, Laurent Vivier, Pavel Dovgalyuk,
Richard Henderson, Marcin Juszkiewicz, Halil Pasic, qemu-arm,
Harsh Prateek Bora, qemu-ppc, Bernhard Beschow,
Michael S. Tsirkin, qemu-s390x, Laurent Vivier, Alistair Francis
On 18/12/24 17:20, Alex Bennée wrote:
> Purely cosmetic.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> util/qemu-timer.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH v2 17/27] tests/qtest: remove clock_steps from virtio tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (15 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 16/27] util/qemu-timer: fix indentation Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 18/27] system/qtest: properly feedback results of clock_[step|set] Alex Bennée
` (9 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
In the qtest environment time will not step forward if the system is
paused (timers disabled) or we have no timer events to fire. As a
result VirtIO events are responded to directly and we don't need to
step time forward.
We still do timeout processing to handle the fact the target QEMU may
not be ready to respond right away. This will usually be due to a slow
CI system or if QEMU is running under something like rr.
Future qtest patches will assert that time actually changes when a
step is requested.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
v2
- s/with/when/
- drop clock_step entirely
---
tests/qtest/libqos/virtio.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/tests/qtest/libqos/virtio.c b/tests/qtest/libqos/virtio.c
index a21b6eee9c..2e7979652f 100644
--- a/tests/qtest/libqos/virtio.c
+++ b/tests/qtest/libqos/virtio.c
@@ -170,7 +170,6 @@ void qvirtio_wait_queue_isr(QTestState *qts, QVirtioDevice *d,
gint64 start_time = g_get_monotonic_time();
for (;;) {
- qtest_clock_step(qts, 100);
if (d->bus->get_queue_isr_status(d, vq)) {
return;
}
@@ -192,7 +191,6 @@ uint8_t qvirtio_wait_status_byte_no_isr(QTestState *qts, QVirtioDevice *d,
uint8_t val;
while ((val = qtest_readb(qts, addr)) == 0xff) {
- qtest_clock_step(qts, 100);
g_assert(!d->bus->get_queue_isr_status(d, vq));
g_assert(g_get_monotonic_time() - start_time <= timeout_us);
}
@@ -219,14 +217,12 @@ void qvirtio_wait_used_elem(QTestState *qts, QVirtioDevice *d,
for (;;) {
uint32_t got_desc_idx;
- qtest_clock_step(qts, 100);
if (d->bus->get_queue_isr_status(d, vq) &&
qvirtqueue_get_buf(qts, vq, &got_desc_idx, len)) {
g_assert_cmpint(got_desc_idx, ==, desc_idx);
return;
}
-
g_assert(g_get_monotonic_time() - start_time <= timeout_us);
}
}
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 18/27] system/qtest: properly feedback results of clock_[step|set]
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (16 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 17/27] tests/qtest: remove clock_steps from virtio tests Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 20:10 ` Fabiano Rosas
2024-12-18 16:20 ` [PATCH v2 19/27] tests/functional: remove hacky sleep from the tests Alex Bennée
` (8 subsequent siblings)
26 siblings, 1 reply; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
Time will not advance if the system is paused or there are no timer
events set for the future. In absence of pending timer events
advancing time would make no difference the system state. Attempting
to do so would be a bug and the test or device under test would need
fixing.
Tighten up the result reporting to `FAIL` if time was not advanced.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2687
---
system/qtest.c | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/system/qtest.c b/system/qtest.c
index 12703a2045..d9501153a4 100644
--- a/system/qtest.c
+++ b/system/qtest.c
@@ -78,6 +78,11 @@ static void *qtest_server_send_opaque;
* let you adjust the value of the clock (monotonically). All the commands
* return the current value of the clock in nanoseconds.
*
+ * If the commands FAIL then time wasn't advanced which is likely
+ * because the machine was in a paused state or no timer events exist
+ * in the future. This will cause qtest to abort and the test will
+ * need to check its assumptions.
+ *
* .. code-block:: none
*
* > clock_step
@@ -710,7 +715,8 @@ static void qtest_process_command(CharBackend *chr, gchar **words)
qtest_sendf(chr, "OK little\n");
}
} else if (qtest_enabled() && strcmp(words[0], "clock_step") == 0) {
- int64_t ns;
+ int64_t old_ns = qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL);
+ int64_t ns, new_ns;
if (words[1]) {
int ret = qemu_strtoi64(words[1], NULL, 0, &ns);
@@ -719,11 +725,10 @@ static void qtest_process_command(CharBackend *chr, gchar **words)
ns = qemu_clock_deadline_ns_all(QEMU_CLOCK_VIRTUAL,
QEMU_TIMER_ATTR_ALL);
}
- qemu_clock_advance_virtual_time(
- qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL) + ns);
+ new_ns = qemu_clock_advance_virtual_time(old_ns + ns);
qtest_send_prefix(chr);
- qtest_sendf(chr, "OK %"PRIi64"\n",
- (int64_t)qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL));
+ qtest_sendf(chr, "%s %"PRIi64"\n",
+ new_ns > old_ns ? "OK" : "FAIL", new_ns);
} else if (strcmp(words[0], "module_load") == 0) {
Error *local_err = NULL;
int rv;
@@ -740,16 +745,16 @@ static void qtest_process_command(CharBackend *chr, gchar **words)
qtest_sendf(chr, "FAIL\n");
}
} else if (qtest_enabled() && strcmp(words[0], "clock_set") == 0) {
- int64_t ns;
+ int64_t ns, new_ns;
int ret;
g_assert(words[1]);
ret = qemu_strtoi64(words[1], NULL, 0, &ns);
g_assert(ret == 0);
- qemu_clock_advance_virtual_time(ns);
+ new_ns = qemu_clock_advance_virtual_time(ns);
qtest_send_prefix(chr);
- qtest_sendf(chr, "OK %"PRIi64"\n",
- (int64_t)qemu_clock_get_ns(QEMU_CLOCK_VIRTUAL));
+ qtest_sendf(chr, "%s %"PRIi64"\n",
+ new_ns == ns ? "OK" : "FAIL", new_ns);
} else if (process_command_cb && process_command_cb(chr, words)) {
/* Command got consumed by the callback handler */
} else {
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* Re: [PATCH v2 18/27] system/qtest: properly feedback results of clock_[step|set]
2024-12-18 16:20 ` [PATCH v2 18/27] system/qtest: properly feedback results of clock_[step|set] Alex Bennée
@ 2024-12-18 20:10 ` Fabiano Rosas
0 siblings, 0 replies; 38+ messages in thread
From: Fabiano Rosas @ 2024-12-18 20:10 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Radoslaw Biernacki, Mark Cave-Ayland, Marc-André Lureau,
Philippe Mathieu-Daudé, qemu-riscv, Nicholas Piggin,
Joel Stanley, Beraldo Leal, Markus Armbruster, Jiaxun Yang,
Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
Alex Bennée <alex.bennee@linaro.org> writes:
> Time will not advance if the system is paused or there are no timer
> events set for the future. In absence of pending timer events
> advancing time would make no difference the system state. Attempting
> to do so would be a bug and the test or device under test would need
> fixing.
>
> Tighten up the result reporting to `FAIL` if time was not advanced.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2687
Reviewed-by: Fabiano Rosas <farosas@suse.de>
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH v2 19/27] tests/functional: remove hacky sleep from the tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (17 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 18/27] system/qtest: properly feedback results of clock_[step|set] Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:25 ` Thomas Huth
2024-12-18 16:20 ` [PATCH v2 20/27] tests/functional: extend test_aarch64_virt with vulkan test Alex Bennée
` (7 subsequent siblings)
26 siblings, 1 reply; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
We have proper detection of prompts now so we don't need to guess with
sleep() sprinkled through the test. The extra step of calling halt is
just to flush the final bits of the log (although the last line is
still missed).
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
v2
- avoid long lines by iterating through an array
- drop time import
---
tests/functional/test_aarch64_virt.py | 29 +++++++++++++++------------
1 file changed, 16 insertions(+), 13 deletions(-)
diff --git a/tests/functional/test_aarch64_virt.py b/tests/functional/test_aarch64_virt.py
index c967da41b4..453e84c39f 100755
--- a/tests/functional/test_aarch64_virt.py
+++ b/tests/functional/test_aarch64_virt.py
@@ -10,7 +10,6 @@
#
# SPDX-License-Identifier: GPL-2.0-or-later
-import time
import os
import logging
@@ -107,18 +106,22 @@ def common_aarch64_virt(self, machine):
'virtio-blk-device,drive=scratch')
self.vm.launch()
- self.wait_for_console_pattern('Welcome to Buildroot')
- time.sleep(0.1)
- exec_command(self, 'root')
- time.sleep(0.1)
- exec_command(self, 'dd if=/dev/hwrng of=/dev/vda bs=512 count=4')
- time.sleep(0.1)
- exec_command(self, 'md5sum /dev/vda')
- time.sleep(0.1)
- exec_command(self, 'cat /proc/interrupts')
- time.sleep(0.1)
- exec_command(self, 'cat /proc/self/maps')
- time.sleep(0.1)
+
+ ps1='#'
+ self.wait_for_console_pattern('login:')
+
+ commands = [
+ ('root', ps1),
+ ('cat /proc/interrupts', ps1),
+ ('cat /proc/self/maps', ps1),
+ ('uname -a', ps1),
+ ('dd if=/dev/hwrng of=/dev/vda bs=512 count=4', ps1),
+ ('md5sum /dev/vda', ps1),
+ ('halt -n', 'reboot: System halted')
+ ]
+
+ for cmd, pattern in commands:
+ exec_command_and_wait_for_pattern(self, cmd, pattern)
def test_aarch64_virt_gicv3(self):
self.common_aarch64_virt("virt,gic_version=3")
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* Re: [PATCH v2 19/27] tests/functional: remove hacky sleep from the tests
2024-12-18 16:20 ` [PATCH v2 19/27] tests/functional: remove hacky sleep from the tests Alex Bennée
@ 2024-12-18 16:25 ` Thomas Huth
0 siblings, 0 replies; 38+ messages in thread
From: Thomas Huth @ 2024-12-18 16:25 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Li-Wen Hsu,
Daniel Henrique Barboza, Aurelien Jarno, Fabiano Rosas,
Radoslaw Biernacki, Mark Cave-Ayland, Marc-André Lureau,
Philippe Mathieu-Daudé, qemu-riscv, Nicholas Piggin,
Joel Stanley, Beraldo Leal, Markus Armbruster, Jiaxun Yang,
Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis
On 18/12/2024 17.20, Alex Bennée wrote:
> We have proper detection of prompts now so we don't need to guess with
> sleep() sprinkled through the test. The extra step of calling halt is
> just to flush the final bits of the log (although the last line is
> still missed).
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH v2 20/27] tests/functional: extend test_aarch64_virt with vulkan test
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (18 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 19/27] tests/functional: remove hacky sleep from the tests Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:37 ` Thomas Huth
2024-12-18 16:39 ` Daniel P. Berrangé
2024-12-18 16:20 ` [PATCH v2 21/27] tests/lcitool: bump to latest version of libvirt-ci Alex Bennée
` (6 subsequent siblings)
26 siblings, 2 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
Now we have virtio-gpu Vulkan support lets add a test for it.
Currently this is using images build by buildroot:
https://lists.buildroot.org/pipermail/buildroot/2024-December/768196.html
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
v2
- use decorator for has_cmd(zstd)
- move set_machine/require_accelerator to top of test
- un-handled->unhandled
- drop extra - from --snapshot
- drop unneeded virtualization=on
- only show 1s of each scene
- fix long lines
---
tests/functional/test_aarch64_virt.py | 84 ++++++++++++++++++++++++++-
1 file changed, 81 insertions(+), 3 deletions(-)
diff --git a/tests/functional/test_aarch64_virt.py b/tests/functional/test_aarch64_virt.py
index 453e84c39f..4ac66905b8 100755
--- a/tests/functional/test_aarch64_virt.py
+++ b/tests/functional/test_aarch64_virt.py
@@ -13,11 +13,14 @@
import os
import logging
+from qemu.machine.machine import VMLaunchFailure
+
from qemu_test import BUILD_DIR
from qemu_test import QemuSystemTest, Asset
from qemu_test import exec_command, wait_for_console_pattern
-from qemu_test import get_qemu_img, run_cmd
-
+from qemu_test import exec_command_and_wait_for_pattern
+from qemu_test import has_cmd, get_qemu_img, run_cmd
+from unittest import skipUnless
class Aarch64VirtMachine(QemuSystemTest):
KERNEL_COMMON_COMMAND_LINE = 'printk.time=0 '
@@ -101,7 +104,9 @@ def common_aarch64_virt(self, machine):
# Add the device
self.vm.add_args('-blockdev',
- f"driver=qcow2,file.driver=file,file.filename={image_path},node-name=scratch")
+ "driver=qcow2,file."
+ "driver=file,file."
+ f"filename={image_path},node-name=scratch")
self.vm.add_args('-device',
'virtio-blk-device,drive=scratch')
@@ -130,5 +135,78 @@ def test_aarch64_virt_gicv2(self):
self.common_aarch64_virt("virt,gic-version=2")
+ ASSET_VIRT_GPU_KERNEL = Asset(
+ ('https://fileserver.linaro.org/s/ce5jXBFinPxtEdx/'
+ 'download?path=%2F&files='
+ 'Image'),
+ '89e5099d26166204cc5ca4bb6d1a11b92c217e1f82ec67e3ba363d09157462f6')
+
+ ASSET_VIRT_GPU_ROOTFS = Asset(
+ ('https://fileserver.linaro.org/s/ce5jXBFinPxtEdx/'
+ 'download?path=%2F&files='
+ 'rootfs.ext4.zstd'),
+ '792da7573f5dc2913ddb7c638151d4a6b2d028a4cb2afb38add513c1924bdad4')
+
+ @skipUnless(*has_cmd('zstd'))
+ def test_aarch64_virt_with_gpu(self):
+ # This tests boots with a buildroot test image that contains
+ # vkmark and other GPU exercising tools. We run a headless
+ # weston that nevertheless still exercises the virtio-gpu
+ # backend.
+
+ self.set_machine('virt')
+ self.require_accelerator("tcg")
+
+ image_path_zst = self.ASSET_VIRT_GPU_ROOTFS.fetch()
+ kernel_path = self.ASSET_VIRT_GPU_KERNEL.fetch()
+
+ image_path = self.workdir + "/rootfs.ext4"
+
+ run_cmd(['zstd', "-f", "-d", image_path_zst,
+ "-o", image_path])
+
+ self.vm.set_console()
+ kernel_command_line = (self.KERNEL_COMMON_COMMAND_LINE +
+ 'console=ttyAMA0 root=/dev/vda')
+
+ self.vm.add_args("-accel", "tcg")
+ self.vm.add_args("-cpu", "neoverse-v1,pauth-impdef=on")
+ self.vm.add_args("-machine", "virt,gic-version=max",
+ '-kernel', kernel_path,
+ '-append', kernel_command_line)
+ self.vm.add_args("-smp", "2", "-m", "2048")
+ self.vm.add_args("-device",
+ "virtio-gpu-gl-pci,hostmem=4G,blob=on,venus=on")
+ self.vm.add_args("-display", "egl-headless")
+ self.vm.add_args("-display", "dbus,gl=on")
+ self.vm.add_args("-device", "virtio-blk-device,drive=hd0")
+ self.vm.add_args("-blockdev",
+ "driver=raw,file.driver=file,"
+ "node-name=hd0,read-only=on,"
+ f"file.filename={image_path}")
+ self.vm.add_args("-snapshot")
+
+ try:
+ self.vm.launch()
+ except VMLaunchFailure as excp:
+ if "old virglrenderer, blob resources unsupported" in excp.output:
+ self.skipTest("No blob support for virtio-gpu")
+ elif "old virglrenderer, venus unsupported" in excp.output:
+ self.skipTest("No venus support for virtio-gpu")
+ else:
+ self.log.info("unhandled launch failure: {excp.output}")
+ raise excp
+
+ self.wait_for_console_pattern('buildroot login:')
+ exec_command(self, 'root')
+ exec_command(self, 'export XDG_RUNTIME_DIR=/tmp')
+ exec_command_and_wait_for_pattern(self,
+ "weston -B headless "
+ "--renderer gl "
+ "--shell kiosk "
+ "-- vkmark -b:duration=1.0",
+ "vkmark Score")
+
+
if __name__ == '__main__':
QemuSystemTest.main()
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* Re: [PATCH v2 20/27] tests/functional: extend test_aarch64_virt with vulkan test
2024-12-18 16:20 ` [PATCH v2 20/27] tests/functional: extend test_aarch64_virt with vulkan test Alex Bennée
@ 2024-12-18 16:37 ` Thomas Huth
2024-12-18 16:39 ` Daniel P. Berrangé
1 sibling, 0 replies; 38+ messages in thread
From: Thomas Huth @ 2024-12-18 16:37 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Li-Wen Hsu,
Daniel Henrique Barboza, Aurelien Jarno, Fabiano Rosas,
Radoslaw Biernacki, Mark Cave-Ayland, Marc-André Lureau,
Philippe Mathieu-Daudé, qemu-riscv, Nicholas Piggin,
Joel Stanley, Beraldo Leal, Markus Armbruster, Jiaxun Yang,
Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis
On 18/12/2024 17.20, Alex Bennée wrote:
> Now we have virtio-gpu Vulkan support lets add a test for it.
s/lets/let's/ ?
...
> diff --git a/tests/functional/test_aarch64_virt.py b/tests/functional/test_aarch64_virt.py
> index 453e84c39f..4ac66905b8 100755
> --- a/tests/functional/test_aarch64_virt.py
> +++ b/tests/functional/test_aarch64_virt.py
> @@ -13,11 +13,14 @@
> import os
> import logging
>
> +from qemu.machine.machine import VMLaunchFailure
> +
> from qemu_test import BUILD_DIR
> from qemu_test import QemuSystemTest, Asset
> from qemu_test import exec_command, wait_for_console_pattern
> -from qemu_test import get_qemu_img, run_cmd
> -
> +from qemu_test import exec_command_and_wait_for_pattern
> +from qemu_test import has_cmd, get_qemu_img, run_cmd
> +from unittest import skipUnless
>
> class Aarch64VirtMachine(QemuSystemTest):
> KERNEL_COMMON_COMMAND_LINE = 'printk.time=0 '
> @@ -101,7 +104,9 @@ def common_aarch64_virt(self, machine):
>
> # Add the device
> self.vm.add_args('-blockdev',
> - f"driver=qcow2,file.driver=file,file.filename={image_path},node-name=scratch")
> + "driver=qcow2,file."
> + "driver=file,file."
> + f"filename={image_path},node-name=scratch")
> self.vm.add_args('-device',
> 'virtio-blk-device,drive=scratch')
>
> @@ -130,5 +135,78 @@ def test_aarch64_virt_gicv2(self):
> self.common_aarch64_virt("virt,gic-version=2")
>
>
> + ASSET_VIRT_GPU_KERNEL = Asset(
> + ('https://fileserver.linaro.org/s/ce5jXBFinPxtEdx/'
> + 'download?path=%2F&files='
> + 'Image'),
> + '89e5099d26166204cc5ca4bb6d1a11b92c217e1f82ec67e3ba363d09157462f6')
> +
> + ASSET_VIRT_GPU_ROOTFS = Asset(
> + ('https://fileserver.linaro.org/s/ce5jXBFinPxtEdx/'
> + 'download?path=%2F&files='
> + 'rootfs.ext4.zstd'),
> + '792da7573f5dc2913ddb7c638151d4a6b2d028a4cb2afb38add513c1924bdad4')
> +
> + @skipUnless(*has_cmd('zstd'))
Please switch to the new @skipIfMissingCommands() decorate that will be
provided by Daniel's patches in my pull request from today (it also removes
has_cmd() so you need to respin this patch as soon as my PR lands).
Thanks,
Thomas
^ permalink raw reply [flat|nested] 38+ messages in thread* Re: [PATCH v2 20/27] tests/functional: extend test_aarch64_virt with vulkan test
2024-12-18 16:20 ` [PATCH v2 20/27] tests/functional: extend test_aarch64_virt with vulkan test Alex Bennée
2024-12-18 16:37 ` Thomas Huth
@ 2024-12-18 16:39 ` Daniel P. Berrangé
1 sibling, 0 replies; 38+ messages in thread
From: Daniel P. Berrangé @ 2024-12-18 16:39 UTC (permalink / raw)
To: Alex Bennée
Cc: qemu-devel, Ed Maste, Eric Farman, Thomas Huth, Li-Wen Hsu,
Daniel Henrique Barboza, Aurelien Jarno, Fabiano Rosas,
Radoslaw Biernacki, Mark Cave-Ayland, Marc-André Lureau,
Philippe Mathieu-Daudé, qemu-riscv, Nicholas Piggin,
Joel Stanley, Beraldo Leal, Markus Armbruster, Jiaxun Yang,
Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis
On Wed, Dec 18, 2024 at 04:20:56PM +0000, Alex Bennée wrote:
> Now we have virtio-gpu Vulkan support lets add a test for it.
> Currently this is using images build by buildroot:
>
> https://lists.buildroot.org/pipermail/buildroot/2024-December/768196.html
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>
> ---
> v2
> - use decorator for has_cmd(zstd)
> - move set_machine/require_accelerator to top of test
> - un-handled->unhandled
> - drop extra - from --snapshot
> - drop unneeded virtualization=on
> - only show 1s of each scene
> - fix long lines
> ---
> tests/functional/test_aarch64_virt.py | 84 ++++++++++++++++++++++++++-
> 1 file changed, 81 insertions(+), 3 deletions(-)
>
> + @skipUnless(*has_cmd('zstd'))
> + def test_aarch64_virt_with_gpu(self):
> + # This tests boots with a buildroot test image that contains
> + # vkmark and other GPU exercising tools. We run a headless
> + # weston that nevertheless still exercises the virtio-gpu
> + # backend.
> +
> + self.set_machine('virt')
> + self.require_accelerator("tcg")
> +
> + image_path_zst = self.ASSET_VIRT_GPU_ROOTFS.fetch()
> + kernel_path = self.ASSET_VIRT_GPU_KERNEL.fetch()
> +
> + image_path = self.workdir + "/rootfs.ext4"
Pending PULL has removed all direct access to self.workdir,
use 'self.scratch_file("rootfs.ext4") instead, except that
shouldn't be needed either....
> +
> + run_cmd(['zstd', "-f", "-d", image_path_zst,
> + "-o", image_path])
...the pending PULL has added common helpers for uncompression,
but only covers gz + lzma so far. Can you create a 'zstd_uncompress'
in uncompress.py and wire it up in the same way. That would let
this code turn into
image_path = self.uncompress(self.ASSERT_VIRT_GPU_ROOTFS)
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH v2 21/27] tests/lcitool: bump to latest version of libvirt-ci
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (19 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 20/27] tests/functional: extend test_aarch64_virt with vulkan test Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:42 ` Daniel P. Berrangé
2024-12-18 16:20 ` [PATCH v2 22/27] tests/docker: move riscv64 cross container from sid to trixie Alex Bennée
` (5 subsequent siblings)
26 siblings, 1 reply; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
We will shortly need this to build our riscv64 cross container.
However to keep the delta down just do the bump first. As ccache4 is
now preferred for FreeBSD to get the latest version there is a little
update in the FreeBSD metadata.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.gitlab-ci.d/cirrus/freebsd-14.vars | 2 +-
tests/lcitool/libvirt-ci | 2 +-
tests/vm/generated/freebsd.json | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/.gitlab-ci.d/cirrus/freebsd-14.vars b/.gitlab-ci.d/cirrus/freebsd-14.vars
index 0a7ac5e0e1..0997c47af5 100644
--- a/.gitlab-ci.d/cirrus/freebsd-14.vars
+++ b/.gitlab-ci.d/cirrus/freebsd-14.vars
@@ -11,6 +11,6 @@ MAKE='/usr/local/bin/gmake'
NINJA='/usr/local/bin/ninja'
PACKAGING_COMMAND='pkg'
PIP3='/usr/local/bin/pip'
-PKGS='alsa-lib bash bison bzip2 ca_root_nss capstone4 ccache cmocka ctags curl cyrus-sasl dbus diffutils dtc flex fusefs-libs3 gettext git glib gmake gnutls gsed gtk-vnc gtk3 json-c libepoxy libffi libgcrypt libjpeg-turbo libnfs libslirp libspice-server libssh libtasn1 llvm lzo2 meson mtools ncurses nettle ninja opencv pixman pkgconf png py311-numpy py311-pillow py311-pip py311-pyyaml py311-sphinx py311-sphinx_rtd_theme py311-tomli python3 rpm2cpio rust rust-bindgen-cli sdl2 sdl2_image snappy sndio socat spice-protocol tesseract usbredir virglrenderer vte3 xorriso zstd'
+PKGS='alsa-lib bash bison bzip2 ca_root_nss capstone4 ccache4 cmocka ctags curl cyrus-sasl dbus diffutils dtc flex fusefs-libs3 gettext git glib gmake gnutls gsed gtk-vnc gtk3 json-c libepoxy libffi libgcrypt libjpeg-turbo libnfs libslirp libspice-server libssh libtasn1 llvm lzo2 meson mtools ncurses nettle ninja opencv pixman pkgconf png py311-numpy py311-pillow py311-pip py311-pyyaml py311-sphinx py311-sphinx_rtd_theme py311-tomli python3 rpm2cpio rust rust-bindgen-cli sdl2 sdl2_image snappy sndio socat spice-protocol tesseract usbredir virglrenderer vte3 xorriso zstd'
PYPI_PKGS=''
PYTHON='/usr/local/bin/python3'
diff --git a/tests/lcitool/libvirt-ci b/tests/lcitool/libvirt-ci
index 9ad3f70bde..b6a65806bc 160000
--- a/tests/lcitool/libvirt-ci
+++ b/tests/lcitool/libvirt-ci
@@ -1 +1 @@
-Subproject commit 9ad3f70bde9865d5ad18f36d256d472e72b5cbf3
+Subproject commit b6a65806bc9b2b56985f5e97c936b77c7e7a99fc
diff --git a/tests/vm/generated/freebsd.json b/tests/vm/generated/freebsd.json
index 3cb7fb7060..81fc38d798 100644
--- a/tests/vm/generated/freebsd.json
+++ b/tests/vm/generated/freebsd.json
@@ -13,7 +13,7 @@
"bzip2",
"ca_root_nss",
"capstone4",
- "ccache",
+ "ccache4",
"cmocka",
"ctags",
"curl",
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* Re: [PATCH v2 21/27] tests/lcitool: bump to latest version of libvirt-ci
2024-12-18 16:20 ` [PATCH v2 21/27] tests/lcitool: bump to latest version of libvirt-ci Alex Bennée
@ 2024-12-18 16:42 ` Daniel P. Berrangé
0 siblings, 0 replies; 38+ messages in thread
From: Daniel P. Berrangé @ 2024-12-18 16:42 UTC (permalink / raw)
To: Alex Bennée
Cc: qemu-devel, Ed Maste, Eric Farman, Thomas Huth, Li-Wen Hsu,
Daniel Henrique Barboza, Aurelien Jarno, Fabiano Rosas,
Radoslaw Biernacki, Mark Cave-Ayland, Marc-André Lureau,
Philippe Mathieu-Daudé, qemu-riscv, Nicholas Piggin,
Joel Stanley, Beraldo Leal, Markus Armbruster, Jiaxun Yang,
Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis
On Wed, Dec 18, 2024 at 04:20:57PM +0000, Alex Bennée wrote:
> We will shortly need this to build our riscv64 cross container.
> However to keep the delta down just do the bump first. As ccache4 is
> now preferred for FreeBSD to get the latest version there is a little
> update in the FreeBSD metadata.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> .gitlab-ci.d/cirrus/freebsd-14.vars | 2 +-
> tests/lcitool/libvirt-ci | 2 +-
> tests/vm/generated/freebsd.json | 2 +-
> 3 files changed, 3 insertions(+), 3 deletions(-)
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH v2 22/27] tests/docker: move riscv64 cross container from sid to trixie
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (20 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 21/27] tests/lcitool: bump to latest version of libvirt-ci Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:20 ` [PATCH v2 23/27] tests/lcitool: remove temp workaround for debian mips64el Alex Bennée
` (4 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
Although riscv64 isn't going to be a release architecture for trixie
the packages are still built while it is testing. Moving from sid will
also avoid some of the volatility we get from tracking the bleeding
edge.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/docker/dockerfiles/debian-riscv64-cross.docker | 4 ++--
tests/lcitool/refresh | 4 +++-
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/tests/docker/dockerfiles/debian-riscv64-cross.docker b/tests/docker/dockerfiles/debian-riscv64-cross.docker
index 4d8ca83cb3..b0386cd3a1 100644
--- a/tests/docker/dockerfiles/debian-riscv64-cross.docker
+++ b/tests/docker/dockerfiles/debian-riscv64-cross.docker
@@ -1,10 +1,10 @@
# THIS FILE WAS AUTO-GENERATED
#
-# $ lcitool dockerfile --layers all --cross-arch riscv64 debian-sid qemu-minimal
+# $ lcitool dockerfile --layers all --cross-arch riscv64 debian-13 qemu-minimal
#
# https://gitlab.com/libvirt/libvirt-ci
-FROM docker.io/library/debian:sid-slim
+FROM docker.io/library/debian:trixie-slim
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
diff --git a/tests/lcitool/refresh b/tests/lcitool/refresh
index 6720516b94..53f8d2585f 100755
--- a/tests/lcitool/refresh
+++ b/tests/lcitool/refresh
@@ -220,7 +220,9 @@ try:
trailer=cross_build("powerpc64le-linux-gnu-",
"ppc64-softmmu,ppc64-linux-user"))
- generate_dockerfile("debian-riscv64-cross", "debian-sid",
+ # while not yet a release architecture the packages are still
+ # build while part of testing
+ generate_dockerfile("debian-riscv64-cross", "debian-13",
project="qemu-minimal",
cross="riscv64",
trailer=cross_build("riscv64-linux-gnu-",
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 23/27] tests/lcitool: remove temp workaround for debian mips64el
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (21 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 22/27] tests/docker: move riscv64 cross container from sid to trixie Alex Bennée
@ 2024-12-18 16:20 ` Alex Bennée
2024-12-18 16:21 ` [PATCH v2 24/27] tests/vm: fix build_path based path Alex Bennée
` (3 subsequent siblings)
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:20 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
From: Daniel P. Berrangé <berrange@redhat.com>
The workaround applied in
commit c60473d29254b79d9437eface8b342e84663ba66
Author: Alex Bennée <alex.bennee@linaro.org>
Date: Wed Oct 2 10:03:33 2024 +0200
testing: bump mips64el cross to bookworm and fix package list
Is no longer required since the affected builds are now fixed.
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Tested-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20241217133525.3836570-1-berrange@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.../dockerfiles/debian-mips64el-cross.docker | 9 ++++++
tests/lcitool/mappings.yml | 29 -------------------
2 files changed, 9 insertions(+), 29 deletions(-)
diff --git a/tests/docker/dockerfiles/debian-mips64el-cross.docker b/tests/docker/dockerfiles/debian-mips64el-cross.docker
index c09a8da890..9f6c4763c5 100644
--- a/tests/docker/dockerfiles/debian-mips64el-cross.docker
+++ b/tests/docker/dockerfiles/debian-mips64el-cross.docker
@@ -93,13 +93,18 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libcmocka-dev:mips64el \
libcurl4-gnutls-dev:mips64el \
libdaxctl-dev:mips64el \
+ libdrm-dev:mips64el \
+ libepoxy-dev:mips64el \
libfdt-dev:mips64el \
libffi-dev:mips64el \
libfuse3-dev:mips64el \
+ libgbm-dev:mips64el \
libgcrypt20-dev:mips64el \
libglib2.0-dev:mips64el \
libglusterfs-dev:mips64el \
libgnutls28-dev:mips64el \
+ libgtk-3-dev:mips64el \
+ libgtk-vnc-2.0-dev:mips64el \
libibverbs-dev:mips64el \
libiscsi-dev:mips64el \
libjemalloc-dev:mips64el \
@@ -119,6 +124,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
librbd-dev:mips64el \
librdmacm-dev:mips64el \
libsasl2-dev:mips64el \
+ libsdl2-dev:mips64el \
+ libsdl2-image-dev:mips64el \
libseccomp-dev:mips64el \
libselinux1-dev:mips64el \
libslirp-dev:mips64el \
@@ -134,6 +141,8 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
libusb-1.0-0-dev:mips64el \
libusbredirhost-dev:mips64el \
libvdeplug-dev:mips64el \
+ libvirglrenderer-dev:mips64el \
+ libvte-2.91-dev:mips64el \
libxdp-dev:mips64el \
libzstd-dev:mips64el \
nettle-dev:mips64el \
diff --git a/tests/lcitool/mappings.yml b/tests/lcitool/mappings.yml
index f8186b0e69..74eb13d62b 100644
--- a/tests/lcitool/mappings.yml
+++ b/tests/lcitool/mappings.yml
@@ -6,23 +6,6 @@ mappings:
flake8:
OpenSUSELeap15:
- # Due to https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1081535 we
- # have to disable all packages that depend on libgl1-mesa-dri:mips64el
- gtk3:
- mips64el-deb:
-
- libdrm:
- mips64el-deb:
-
- libepoxy:
- mips64el-deb:
-
- gtk-vnc:
- mips64el-deb:
-
- mesa-libgbm:
- mips64el-deb:
-
meson:
OpenSUSELeap15:
@@ -81,18 +64,6 @@ mappings:
python3-wheel:
OpenSUSELeap15: python311-pip
- sdl2:
- mips64el-deb:
-
- sdl2-image:
- mips64el-deb:
-
- virglrenderer:
- mips64el-deb:
-
- vte:
- mips64el-deb:
-
pypi_mappings:
# Request more recent version
meson:
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 24/27] tests/vm: fix build_path based path
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (22 preceding siblings ...)
2024-12-18 16:20 ` [PATCH v2 23/27] tests/lcitool: remove temp workaround for debian mips64el Alex Bennée
@ 2024-12-18 16:21 ` Alex Bennée
2024-12-18 17:07 ` Philippe Mathieu-Daudé
2024-12-18 16:21 ` [PATCH v2 25/27] tests/vm: partially un-tabify help output Alex Bennée
` (2 subsequent siblings)
26 siblings, 1 reply; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:21 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
We no longer need to go into the per-arch build directories to find
the build directories binary. Lets call it directly.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/vm/basevm.py | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/tests/vm/basevm.py b/tests/vm/basevm.py
index 4a1af04b9a..6f3f2e76df 100644
--- a/tests/vm/basevm.py
+++ b/tests/vm/basevm.py
@@ -520,8 +520,7 @@ def get_qemu_path(arch, build_path=None):
if "QEMU" in os.environ:
qemu_path = os.environ["QEMU"]
elif build_path:
- qemu_path = os.path.join(build_path, arch + "-softmmu")
- qemu_path = os.path.join(qemu_path, "qemu-system-" + arch)
+ qemu_path = os.path.join(build_path, "qemu-system-" + arch)
else:
# Default is to use system path for qemu.
qemu_path = "qemu-system-" + arch
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* Re: [PATCH v2 24/27] tests/vm: fix build_path based path
2024-12-18 16:21 ` [PATCH v2 24/27] tests/vm: fix build_path based path Alex Bennée
@ 2024-12-18 17:07 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 38+ messages in thread
From: Philippe Mathieu-Daudé @ 2024-12-18 17:07 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, qemu-riscv, Nicholas Piggin, Joel Stanley,
Beraldo Leal, Markus Armbruster, Jiaxun Yang, Weiwei Li,
Peter Maydell, Cleber Rosa, Leif Lindholm, Christian Borntraeger,
John Snow, Marcel Apfelbaum, Palmer Dabbelt, Bin Meng,
Daniel Henrique Barboza, Paolo Bonzini, Liu Zhiwei,
Wainer dos Santos Moschetta, Laurent Vivier, Pavel Dovgalyuk,
Richard Henderson, Marcin Juszkiewicz, Halil Pasic, qemu-arm,
Harsh Prateek Bora, qemu-ppc, Bernhard Beschow,
Michael S. Tsirkin, qemu-s390x, Laurent Vivier, Alistair Francis
On 18/12/24 17:21, Alex Bennée wrote:
> We no longer need to go into the per-arch build directories to find
> the build directories binary. Lets call it directly.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> tests/vm/basevm.py | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
^ permalink raw reply [flat|nested] 38+ messages in thread
* [PATCH v2 25/27] tests/vm: partially un-tabify help output
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (23 preceding siblings ...)
2024-12-18 16:21 ` [PATCH v2 24/27] tests/vm: fix build_path based path Alex Bennée
@ 2024-12-18 16:21 ` Alex Bennée
2024-12-18 16:21 ` [PATCH v2 26/27] tests/vm: allow interactive login as root Alex Bennée
2024-12-18 16:21 ` [PATCH v2 27/27] pc-bios: ensure keymaps dependencies set vnc tests Alex Bennée
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:21 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
While the make syntax itself uses tabs having a mixture of tabs and
spaces in the vm-help output make no sense and confuses things lining
up between terminal and editor. Fix that.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/vm/Makefile.include | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/tests/vm/Makefile.include b/tests/vm/Makefile.include
index 13ed80f72d..d80ca79a28 100644
--- a/tests/vm/Makefile.include
+++ b/tests/vm/Makefile.include
@@ -64,23 +64,23 @@ endif
@echo " vm-boot-ssh-<guest> - Boot guest and login via ssh"
@echo
@echo "Special variables:"
- @echo " BUILD_TARGET=foo - Override the build target"
- @echo " DEBUG=1 - Enable verbose output on host and interactive debugging"
- @echo ' EXTRA_CONFIGURE_OPTS="..." - Pass to configure step'
- @echo " J=[0..9]* - Override the -jN parameter for make commands"
- @echo " LOG_CONSOLE=1 - Log console to file in: ~/.cache/qemu-vm "
- @echo " USE_TCG=1 - Use TCG for cross-arch images"
- @echo " QEMU=/path/to/qemu - Change path to QEMU binary"
+ @echo " BUILD_TARGET=foo - Override the build target"
+ @echo " DEBUG=1 - Enable verbose output on host and interactive debugging"
+ @echo ' EXTRA_CONFIGURE_OPTS="..." - Pass to configure step'
+ @echo " J=[0..9]* - Override the -jN parameter for make commands"
+ @echo " LOG_CONSOLE=1 - Log console to file in: ~/.cache/qemu-vm "
+ @echo " USE_TCG=1 - Use TCG for cross-arch images"
+ @echo " QEMU=/path/to/qemu - Change path to QEMU binary"
ifeq ($(HAVE_PYTHON_YAML),yes)
- @echo " QEMU_CONFIG=/path/conf.yml - Change path to VM configuration .yml file."
+ @echo " QEMU_CONFIG=/path/conf.yml - Change path to VM configuration .yml file."
else
@echo " (install python3-yaml to enable support for yaml file to configure a VM.)"
endif
- @echo " See conf_example_*.yml for file format details."
- @echo " QEMU_IMG=/path/to/qemu-img - Change path to qemu-img tool"
- @echo " QEMU_LOCAL=1 - Use QEMU binary local to this build."
- @echo " TARGET_LIST=a,b,c - Override target list in builds"
- @echo " V=1 - Enable verbose output on host and guest commands"
+ @echo " See conf_example_*.yml for file format details."
+ @echo " QEMU_IMG=/path/to/qemu-img - Change path to qemu-img tool"
+ @echo " QEMU_LOCAL=1 - Use QEMU binary local to this build."
+ @echo " TARGET_LIST=a,b,c - Override target list in builds"
+ @echo " V=1 - Enable verbose output on host and guest commands"
vm-build-all: $(addprefix vm-build-, $(IMAGES))
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 26/27] tests/vm: allow interactive login as root
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (24 preceding siblings ...)
2024-12-18 16:21 ` [PATCH v2 25/27] tests/vm: partially un-tabify help output Alex Bennée
@ 2024-12-18 16:21 ` Alex Bennée
2024-12-18 16:21 ` [PATCH v2 27/27] pc-bios: ensure keymaps dependencies set vnc tests Alex Bennée
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:21 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
This is useful when debugging and you want to add packages to an
image.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/vm/Makefile.include | 3 ++-
tests/vm/basevm.py | 9 +++++++--
2 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/tests/vm/Makefile.include b/tests/vm/Makefile.include
index d80ca79a28..14188bba1c 100644
--- a/tests/vm/Makefile.include
+++ b/tests/vm/Makefile.include
@@ -66,6 +66,7 @@ endif
@echo "Special variables:"
@echo " BUILD_TARGET=foo - Override the build target"
@echo " DEBUG=1 - Enable verbose output on host and interactive debugging"
+ @echo " ROOT_USER=1 - Login as root user for interactive shell"
@echo ' EXTRA_CONFIGURE_OPTS="..." - Pass to configure step'
@echo " J=[0..9]* - Override the -jN parameter for make commands"
@echo " LOG_CONSOLE=1 - Log console to file in: ~/.cache/qemu-vm "
@@ -141,6 +142,6 @@ vm-boot-ssh-%: $(IMAGES_DIR)/%.img $(VM_VENV)
$(if $(EFI_AARCH64),--efi-aarch64 $(EFI_AARCH64)) \
$(if $(LOG_CONSOLE),--log-console) \
--image "$<" \
- --interactive \
+ $(if $(ROOT_USER),--interactive-root,-interactive) \
false, \
" VM-BOOT-SSH $*") || true
diff --git a/tests/vm/basevm.py b/tests/vm/basevm.py
index 6f3f2e76df..6d41ac7574 100644
--- a/tests/vm/basevm.py
+++ b/tests/vm/basevm.py
@@ -612,8 +612,11 @@ def get_default_jobs():
parser.add_argument("--source-path", default=None,
help="Path of source directory, "\
"for finding additional files. ")
- parser.add_argument("--interactive", "-I", action="store_true",
- help="Interactively run command")
+ int_ops = parser.add_mutually_exclusive_group()
+ int_ops.add_argument("--interactive", "-I", action="store_true",
+ help="Interactively run command")
+ int_ops.add_argument("--interactive-root", action="store_true",
+ help="Interactively run command as root")
parser.add_argument("--snapshot", "-s", action="store_true",
help="run tests with a snapshot")
parser.add_argument("--genisoimage", default="genisoimage",
@@ -675,6 +678,8 @@ def main(vmcls, config=None):
exitcode = 3
if args.interactive:
vm.ssh()
+ elif args.interactive_root:
+ vm.ssh_root()
if not args.snapshot:
vm.graceful_shutdown()
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread* [PATCH v2 27/27] pc-bios: ensure keymaps dependencies set vnc tests
2024-12-18 16:20 [PATCH v2 00/27] testing/next: functional tests, qtest clocks, vm and keymaps Alex Bennée
` (25 preceding siblings ...)
2024-12-18 16:21 ` [PATCH v2 26/27] tests/vm: allow interactive login as root Alex Bennée
@ 2024-12-18 16:21 ` Alex Bennée
26 siblings, 0 replies; 38+ messages in thread
From: Alex Bennée @ 2024-12-18 16:21 UTC (permalink / raw)
To: qemu-devel
Cc: Daniel P. Berrangé, Ed Maste, Eric Farman, Thomas Huth,
Li-Wen Hsu, Daniel Henrique Barboza, Aurelien Jarno,
Fabiano Rosas, Radoslaw Biernacki, Mark Cave-Ayland,
Marc-André Lureau, Philippe Mathieu-Daudé, qemu-riscv,
Nicholas Piggin, Joel Stanley, Beraldo Leal, Markus Armbruster,
Jiaxun Yang, Weiwei Li, Peter Maydell, Cleber Rosa, Leif Lindholm,
Christian Borntraeger, John Snow, Marcel Apfelbaum,
Palmer Dabbelt, Bin Meng, Daniel Henrique Barboza, Paolo Bonzini,
Liu Zhiwei, Wainer dos Santos Moschetta, Laurent Vivier,
Pavel Dovgalyuk, Richard Henderson, Marcin Juszkiewicz,
Halil Pasic, qemu-arm, Harsh Prateek Bora, qemu-ppc,
Bernhard Beschow, Michael S. Tsirkin, qemu-s390x, Laurent Vivier,
Alistair Francis, Alex Bennée
I was seeing failures on vnc-display-test on FreeBSD:
make vm-build-freebsd V=1 TARGET_LIST=aarch64-softmmu BUILD_TARGET=check-qtest QEMU_LOCAL=1 DEBUG=1
Leads to:
qemu-system-aarch64: -vnc none: could not read keymap file: 'en-us'
Broken pipe
../src/tests/qtest/libqtest.c:196: kill_qemu() tried to terminate QEMU process but encountered exit status 1 (expected 0)
which was as far as I could tell because we don't populate the
$BLD/pc-bios/keymaps (although something attempts to symlink
qemu-bundle/usr/local/share/qemu/keymaps/ to that dir).
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>
---
pc-bios/keymaps/meson.build | 17 ++++++++---------
tests/qtest/meson.build | 2 +-
2 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/pc-bios/keymaps/meson.build b/pc-bios/keymaps/meson.build
index 0bd8ce0077..a79a09b276 100644
--- a/pc-bios/keymaps/meson.build
+++ b/pc-bios/keymaps/meson.build
@@ -39,19 +39,18 @@ else
native_qemu_keymap = qemu_keymap
endif
+keymap_targets = []
if native_qemu_keymap.found()
- t = []
foreach km, args: keymaps
# generate with qemu-kvm
- t += custom_target(km,
- build_by_default: true,
- output: km,
- command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()],
- install: have_system,
- install_dir: qemu_datadir / 'keymaps')
+ keymap_targets += custom_target(km,
+ build_by_default: true,
+ output: km,
+ command: [native_qemu_keymap, '-f', '@OUTPUT@', args.split()],
+ install: have_system,
+ install_dir: qemu_datadir / 'keymaps')
endforeach
-
- alias_target('update-keymaps', t)
+ alias_target('update-keymaps', keymap_targets)
else
install_data(keymaps.keys(), install_dir: qemu_datadir / 'keymaps')
endif
diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build
index c5a70021c5..f75c1057a4 100644
--- a/tests/qtest/meson.build
+++ b/tests/qtest/meson.build
@@ -383,7 +383,7 @@ qtests = {
if vnc.found()
gvnc = dependency('gvnc-1.0', method: 'pkg-config', required: false)
if gvnc.found()
- qtests += {'vnc-display-test': [gvnc]}
+ qtests += {'vnc-display-test': [gvnc, keymap_targets]}
qtests_generic += [ 'vnc-display-test' ]
endif
endif
--
2.39.5
^ permalink raw reply related [flat|nested] 38+ messages in thread