On Thu, Oct 16, 2025 at 02:17:08PM +0200, Shalini Chellathurai Saroja wrote:
> Add tests for SCLP event type Control-Program Identification.
> 
> Signed-off-by: Shalini Chellathurai Saroja <[email protected]>
> Suggested-by: Thomas Huth <[email protected]>
> ---
>  tests/functional/s390x/test_ccw_virtio.py | 26 +++++++++++++++++++++++
>  1 file changed, 26 insertions(+)
> 
> diff --git a/tests/functional/s390x/test_ccw_virtio.py 
> b/tests/functional/s390x/test_ccw_virtio.py
> index 453711aa0f..0455337856 100755
> --- a/tests/functional/s390x/test_ccw_virtio.py
> +++ b/tests/functional/s390x/test_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,30 @@ 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 0x001a000000060b00 > ' + cpi + 
> 'system_level')
> +        exec_command_and_wait_for_pattern(self,
> +                                          'echo 1 > ' + cpi + 'set', ':/#')
> +        try:
> +            event = self.vm.event_wait('SCLP_CPI_INFO_AVAILABLE')
> +        except TimeoutError:
> +            self.fail('Timed out waiting for the SCLP_CPI_INFO_AVAILABLE 
> event')
> +        ts = self.vm.cmd('qom-get', path=sclpcpi, property='timestamp')
> +        self.assertNotEqual(ts, 0)
> +        name = self.vm.cmd('qom-get', path=sclpcpi, property='system_name')
> +        self.assertEqual(name.strip(), 'TESTVM')
> +        typ = self.vm.cmd('qom-get', path=sclpcpi, property='system_type')
> +        self.assertEqual(typ.strip(), 'LINUX')
> +        sysplex = self.vm.cmd('qom-get', path=sclpcpi, 
> property='sysplex_name')
> +        self.assertEqual(sysplex.strip(), 'TESTPLEX')
> +        level = self.vm.cmd('qom-get', path=sclpcpi, property='system_level')
> +        self.assertEqual(level, 0x001a000000060b00)
> +
>  if __name__ == '__main__':
>      QemuSystemTest.main()

Reviewed-by: Hendrik Brueckner <[email protected]>

Reply via email to