qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC] tests/functional: add tests for SCLP event CPI
@ 2025-08-12 12:31 Shalini Chellathurai Saroja
  2025-08-25 11:30 ` Thomas Huth
  2025-09-11  9:05 ` Nina Schoetterl-Glausch
  0 siblings, 2 replies; 5+ messages in thread
From: Shalini Chellathurai Saroja @ 2025-08-12 12:31 UTC (permalink / raw)
  To: qemu-s390x mailing list, Thomas Huth
  Cc: Daniel Berrange, qemu-devel mailing list, Nina Schoetterl-Glausch,
	Hendrik Brueckner, Shalini Chellathurai Saroja

Add tests for SCLP event type Control-Program Identification
(CPI) to s390x CCW virtio tests.

Please note that these tests are skipped as the guest OS does not
trigger the SCLP event type CPI when the command
'echo 1 > /sys/firmware/cpi/set' is executed in the guest. I
believe that the guest OS must to be updated to support the SCLP
event type CPI.

Signed-off-by: Shalini Chellathurai Saroja <shalini@linux.ibm.com>
Suggested-by: Thomas Huth <thuth@redhat.com>
---
 tests/functional/test_s390x_ccw_virtio.py | 24 +++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/tests/functional/test_s390x_ccw_virtio.py b/tests/functional/test_s390x_ccw_virtio.py
index 453711aa0f..c14379cbaa 100755
--- a/tests/functional/test_s390x_ccw_virtio.py
+++ b/tests/functional/test_s390x_ccw_virtio.py
@@ -15,6 +15,7 @@
 import tempfile
 
 from qemu_test import QemuSystemTest, Asset
+from qemu_test import exec_command
 from qemu_test import exec_command_and_wait_for_pattern
 from qemu_test import wait_for_console_pattern
 
@@ -270,5 +271,28 @@ def test_s390x_fedora(self):
                         'while ! (dmesg -c | grep Start.virtcrypto_remove) ; do'
                         ' sleep 1 ; done', 'Start virtcrypto_remove.')
 
+        # Test SCLP event Control-Program Identification (CPI)
+        cpi = '/sys/firmware/cpi/'
+        sclpcpi = '/machine/sclp/s390-sclp-event-facility/sclpcpi'
+        self.log.info("Test SCLP event CPI")
+        exec_command(self, 'echo TESTVM > ' + cpi + 'system_name')
+        exec_command(self, 'echo LINUX > ' + cpi + 'system_type')
+        exec_command(self, 'echo TESTPLEX > ' + cpi + 'sysplex_name')
+        exec_command(self, 'echo 1 > ' + cpi + 'set')
+        try:
+            event = self.vm.event_wait('SCLP_EVENT_CTRL_PGM_ID')
+        except TimeoutError:
+            self.skipTest('SCLP Event type CPI is not supported by guest OS')
+        ts = self.vm.cmd('qom-get', path=sclpcpi, property='timestamp')
+        self.assertNotEqual(int(ts), 0)
+        name = self.vm.cmd('qom-get', path=sclpcpi, property='system_name')
+        self.assertEqual(name, 'TESTVM')
+        typ = self.vm.cmd('qom-get', path=sclpcpi, property='system_type')
+        self.assertEqual(typ, 'LINUX')
+        sysplex = self.vm.cmd('qom-get', path=sclpcpi, property='sysplex_name')
+        self.assertEqual(sysplex, 'TESTPLEX')
+        level = self.vm.cmd('qom-get', path=sclpcpi, property='system_level')
+        self.assertNotEqual(int(level), 0)
+
 if __name__ == '__main__':
     QemuSystemTest.main()
-- 
2.49.0



^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-10-13 13:38 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-12 12:31 [PATCH RFC] tests/functional: add tests for SCLP event CPI Shalini Chellathurai Saroja
2025-08-25 11:30 ` Thomas Huth
2025-10-13 13:37   ` Shalini Chellathurai Saroja
2025-09-11  9:05 ` Nina Schoetterl-Glausch
2025-09-11  9:21   ` Thomas Huth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).