On 16/10/2025 14.17, Shalini Chellathurai Saroja wrote:
Add QAPI event SCLP_CPI_INFO_AVAILABLE to notify the availability
of Control-Program Identification data in QOM.
Signed-off-by: Shalini Chellathurai Saroja <[email protected]>
Suggested-by: Thomas Huth <[email protected]>
---
hw/s390x/sclpcpi.c | 4 ++++
qapi/machine-s390x.json | 21 +++++++++++++++++++++
2 files changed, 25 insertions(+)
diff --git a/hw/s390x/sclpcpi.c b/hw/s390x/sclpcpi.c
index 7aa039d510..68fc1b809b 100644
--- a/hw/s390x/sclpcpi.c
+++ b/hw/s390x/sclpcpi.c
@@ -54,6 +54,7 @@
#include "hw/s390x/event-facility.h"
#include "hw/s390x/ebcdic.h"
#include "qapi/qapi-visit-machine.h"
+#include "qapi/qapi-events-machine-s390x.h"
#include "migration/vmstate.h"
typedef struct Data {
@@ -106,6 +107,9 @@ static int write_event_data(SCLPEvent *event,
EventBufferHeader *evt_buf_hdr)
e->timestamp = qemu_clock_get_ns(QEMU_CLOCK_HOST);
cpim->ebh.flags = SCLP_EVENT_BUFFER_ACCEPTED;
+
+ qapi_event_send_sclp_cpi_info_available();
+
return SCLP_RC_NORMAL_COMPLETION;
}
diff --git a/qapi/machine-s390x.json b/qapi/machine-s390x.json
index 966dbd61d2..8412668b67 100644
--- a/qapi/machine-s390x.json
+++ b/qapi/machine-s390x.json
@@ -119,3 +119,24 @@
{ 'command': 'query-s390x-cpu-polarization', 'returns': 'CpuPolarizationInfo',
'features': [ 'unstable' ]
}
+
+##
+# @SCLP_CPI_INFO_AVAILABLE:
+#
+# Emitted when the Control-Program Identification data is available
+# in the QOM tree.
+#
+# Features:
+#
+# @unstable: This event is experimental.
+#
+# Since: 10.2
+#
+# .. qmp-example::
+#
+# <- { "event": "SCLP_CPI_INFO_AVAILABLE",
+# "timestamp": { "seconds": 1401385907, "microseconds": 422329 } }
+##
+{ 'event': 'SCLP_CPI_INFO_AVAILABLE',
+ 'features': [ 'unstable' ]
+}
Reviewed-by: Thomas Huth <[email protected]>