qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Shalini Chellathurai Saroja <shalini@linux.ibm.com>
To: Thomas Huth <thuth@redhat.com>,
	Hendrik Brueckner <brueckner@linux.ibm.com>
Cc: Nina Schoetterl-Glausch <nsg@linux.ibm.com>,
	qemu-s390x mailing list <qemu-s390x@nongnu.org>,
	Daniel Berrange <berrange@redhat.com>,
	qemu-devel mailing list <qemu-devel@nongnu.org>,
	"<Shalini Chellathurai Saroja" <shalini@linux.ibm.com>
Subject: Re: [PATCH v4 1/4] hw/s390x: add SCLP event type CPI
Date: Tue, 06 May 2025 14:16:18 +0200	[thread overview]
Message-ID: <2d53cf272ae58736b7904c9a86a2a1ce@linux.ibm.com> (raw)
In-Reply-To: <5077ebbe-5a4d-4db5-8a1d-067d88244bfb@redhat.com>

On 2025-05-06 09:48, Thomas Huth wrote:
> On 06/05/2025 08.48, Nina Schoetterl-Glausch wrote:
>> On Mon, 2025-05-05 at 08:55 +0200, Shalini Chellathurai Saroja wrote:
>>> On 2025-04-28 11:22, Janis Schoetterl-Glausch wrote:
>>>> On Thu, 2025-04-10 at 17:09 +0200, Shalini Chellathurai Saroja 
>>>> wrote:
>>>>> Implement the Service-Call Logical Processor (SCLP) event
>>>>> type Control-Program Identification (CPI) in QEMU. This
>>>>> event is used to send CPI identifiers from the guest to the
>>>>> host. The CPI identifiers are: system type, system name,
>>>>> system level and sysplex name.
>>>>> 
>>>>> System type: operating system of the guest (e.g. "LINUX").
>>>>> System name: user configurable name of the guest (e.g. "TESTVM").
>>>>> System level: distribution and kernel version, if the system type 
>>>>> is
>>>>> Linux
>>>>> (e.g. 0x50e00).
>>>>> Sysplex name: name of the cluster which the guest belongs to (if 
>>>>> any)
>>>>> (e.g. "PLEX").
>>>>> 
>>>>> Signed-off-by: Shalini Chellathurai Saroja <shalini@linux.ibm.com>
>>>>> Reviewed-by: Thomas Huth <thuth@redhat.com>
>>>>> ---
>>>>>   hw/s390x/event-facility.c         |  2 +
>>>>>   hw/s390x/meson.build              |  1 +
>>>>>   hw/s390x/s390-virtio-ccw.c        | 14 +++++
>>>>>   hw/s390x/sclpcpi.c                | 92
>>>>> +++++++++++++++++++++++++++++++
>>>>>   include/hw/s390x/event-facility.h | 13 +++++
>>>>>   5 files changed, 122 insertions(+)
>>>>>   create mode 100644 hw/s390x/sclpcpi.c
>>>>> 
>>>>> diff --git a/hw/s390x/event-facility.c b/hw/s390x/event-facility.c
>>>>> index 2b0332c20e..60237b8581 100644
>>>>> --- a/hw/s390x/event-facility.c
>>>>> +++ b/hw/s390x/event-facility.c
>> 
>> [...]
>> 
>>> It is possible to add the identifiers directly as the properties of
>>> sclpcpi (eg. system type as shown below) and remove the
>>> control-program-id.
>> 
>> This is what I meant, drop it from qom.

Ok.

>>> 
>>> virsh # qemu-monitor-command vm --pretty
>>> '{"execute":"qom-list","arguments": {"path":
>>> "/machine/sclp/s390-sclp-event-facility/sclpcpi"}}'
>>> {
>>>     "return": [
>>>       {
>>>         "name": "type",
>>>         "type": "string"
>>>       },
>>>       {
>>>         "name": "parent_bus",
>>>         "type": "link<bus>"
>>>       },
>>>       {
>>>         "name": "realized",
>>>         "type": "bool"
>>>       },
>>>       {
>>>         "name": "hotplugged",
>>>         "type": "bool"
>>>       },
>>>       {
>>>         "name": "hotpluggable",
>>>         "type": "bool"
>>>       },
>>>       {
>>>         "name": "system_type",
>>>         "type": "string"
>>>       },
>>>       {
>>>         "name": "control-program-id",
>>>         "type": "S390ControlProgramId"
>>>       }
>>>     ],
>>>     "id": "libvirt-16"
>>> }
>>> 
>>> virsh # qemu-monitor-command vm --pretty '{"execute":"qom-get",
>>> "arguments":{"path":"/machine/sclp/s390-sclp-event-facility/sclpcpi",
>>> "property":"system_type"}}'
>>> {
>>>     "return": "LINUX   ",
>>>     "id": "libvirt-17"
>>> }
>>> 
>>> However, Hendrik Brückner suggested to group the identifiers together
>>> during the initial discussion of this line item. So, I would prefer 
>>> to
>> 
>> They are grouped together under "sclpcpi", no?

Yes.

>> 
>>> leave this as it is. Please let me know if you still think otherwise.
>> 
>> I don't have a strong opinion on this, just wanted to mention it and 
>> see what other people say.
> 
> I guess it mostly depends on whether there are future plans for using
> the QOM type elsewhere. If this type is supposed to be used in other
> QAPI calls in the future, it makes sense to keep it separate now. If
> there are no such plans, it's maybe easier to integrate the values
> into sclpcpi directly. Hendrik, any opinion from your side?
> 
>  Thomas

Hello Hendrik,

I have provided the output of both the options below. Please let me know 
which option do you prefer.

I have incorporated the other comments. So I will be able to send V5 
after your response. Thank you very much!

Option 1: Control-program identifiers set as the properties of sclpcpi:

virsh # qemu-monitor-command vm --pretty 
'{"execute":"qom-list","arguments": {"path": 
"/machine/sclp/s390-sclp-event-facility/sclpcpi"}}'
{
   "return": [
     {
[...]
     },
     {
       "name": "system_level",
       "type": "uint64"
     },
     {
       "name": "system_name",
       "type": "string"
     },
     {
       "name": "system_type",
       "type": "string"
     },
     {
       "name": "timestamp",
       "type": "uint64"
     },
     {
       "name": "sysplex_name",
       "type": "string"
     }
   ],
   "id": "libvirt-14"
}

virsh # qemu-monitor-command vm --pretty '{"execute":"qom-get", 
"arguments":{"path":"/machine/sclp/s390-sclp-event-facility/sclpcpi", 
"property":"system_type"}}'
{
   "return": "LINUX   ",
   "id": "libvirt-18"
}
virsh # qemu-monitor-command vm --pretty '{"execute":"qom-get", 
"arguments":{"path":"/machine/sclp/s390-sclp-event-facility/sclpcpi", 
"property":"system_name"}}'
{
   "return": "TESTVM  ",
   "id": "libvirt-19"
}
virsh # qemu-monitor-command vm --pretty '{"execute":"qom-get", 
"arguments":{"path":"/machine/sclp/s390-sclp-event-facility/sclpcpi", 
"property":"sysplex_name"}}'
{
   "return": "PLEX    ",
   "id": "libvirt-20"
}
virsh # qemu-monitor-command vm --pretty '{"execute":"qom-get", 
"arguments":{"path":"/machine/sclp/s390-sclp-event-facility/sclpcpi", 
"property":"system_level"}}'
{
   "return": 74872343805430528,
   "id": "libvirt-21"
}


Option 2: control-program-id of type S390ControlProgramId set as a 
property of sclpcpi:

virsh # qemu-monitor-command vm --pretty 
'{"execute":"qom-list","arguments": {"path": 
"/machine/sclp/s390-sclp-event-facility/sclpcpi"}}'
{
   "return": [
     {
[...]
     },
     {
       "name": "control-program-id",
       "type": "S390ControlProgramId"
     }
   ],
   "id": "libvirt-14"
}

virsh # qemu-monitor-command vm --pretty '{"execute":"qom-get", 
"arguments":{"path":"/machine/sclp/s390-sclp-event-facility/sclpcpi", 
"property":"control-program-id"}}'
{
   "return": {
     "timestamp": 1746532735581612000,
     "system-level": 74872343805430528,
     "sysplex-name": "PLEX    ",
     "system-name": "TESTVM  ",
     "system-type": "LINUX   "
   },
   "id": "libvirt-22"
}



-- 
Mit freundlichen Grüßen / Kind regards
Shalini Chellathurai Saroja
Software Developer
Linux on IBM Z & KVM Development
IBM Deutschland Research & Development GmbH
Dept 1419, Schoenaicher Str. 220, 71032 Boeblingen
Vorsitzender des Aufsichtsrats: Wolfgang Wendt
Geschäftsführung: David Faller
Sitz der Gesellschaft: Böblingen / Registergericht: Amtsgericht 
Stuttgart, HRB 243294


  reply	other threads:[~2025-05-06 12:17 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-05  6:55 [PATCH v4 1/4] hw/s390x: add SCLP event type CPI Shalini Chellathurai Saroja
2025-05-06  6:48 ` Nina Schoetterl-Glausch
2025-05-06  7:48   ` Thomas Huth
2025-05-06 12:16     ` Shalini Chellathurai Saroja [this message]
2025-05-23 12:07       ` Hendrik Brueckner
2025-05-28 12:11         ` Shalini Chellathurai Saroja
  -- strict thread matches above, loose matches on Subject: below --
2025-04-10 15:09 [PATCH v4 0/4] Add " Shalini Chellathurai Saroja
2025-04-10 15:09 ` [PATCH v4 1/4] hw/s390x: add " Shalini Chellathurai Saroja
2025-04-28  9:22   ` Janis Schoetterl-Glausch
2025-04-29  9:20   ` Nina Schoetterl-Glausch
2025-05-05  6:58     ` Shalini Chellathurai Saroja

Reply instructions:

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

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

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

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

  git send-email \
    --in-reply-to=2d53cf272ae58736b7904c9a86a2a1ce@linux.ibm.com \
    --to=shalini@linux.ibm.com \
    --cc=berrange@redhat.com \
    --cc=brueckner@linux.ibm.com \
    --cc=nsg@linux.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=thuth@redhat.com \
    /path/to/YOUR_REPLY

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

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is 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).