From: Pierre Morel <pmorel@linux.ibm.com>
To: qemu-s390x@nongnu.org
Cc: qemu-devel@nongnu.org, borntraeger@de.ibm.com,
pasic@linux.ibm.com, richard.henderson@linaro.org,
david@redhat.com, thuth@redhat.com, cohuck@redhat.com,
mst@redhat.com, pbonzini@redhat.com, kvm@vger.kernel.org,
ehabkost@redhat.com, marcel.apfelbaum@gmail.com,
eblake@redhat.com, armbru@redhat.com, seiden@linux.ibm.com,
nrb@linux.ibm.com, scgl@linux.ibm.com, frankja@linux.ibm.com,
berrange@redhat.com, clg@kaod.org
Subject: Re: [PATCH v12 2/7] s390x/cpu topology: reporting the CPU topology to the guest
Date: Tue, 6 Dec 2022 15:44:24 +0100 [thread overview]
Message-ID: <8c6ae27d-ac83-505f-cf2f-df30c3612e6f@linux.ibm.com> (raw)
In-Reply-To: <20221129174206.84882-3-pmorel@linux.ibm.com>
On 11/29/22 18:42, Pierre Morel wrote:
> The guest uses the STSI instruction to get information on the
> CPU topology.
>
> Let us implement the STSI instruction for the basis CPU topology
> level, level 2.
>
> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com>
> ---
> target/s390x/cpu.h | 77 +++++++++++++++
> hw/s390x/s390-virtio-ccw.c | 12 +--
> target/s390x/cpu_topology.c | 186 ++++++++++++++++++++++++++++++++++++
> target/s390x/kvm/kvm.c | 6 +-
> target/s390x/meson.build | 1 +
> 5 files changed, 274 insertions(+), 8 deletions(-)
> create mode 100644 target/s390x/cpu_topology.c
>
> + */
> +static void s390_topology_add_cpu(S390Topology *topo, S390CPU *cpu)
> +{
> + int core_id = cpu->env.core_id;
> + int bit, origin;
> + int socket_id;
> +
> + cpu->machine_data = topo;
Sorry this wrong machine_data is already used as a pointer to the
S390CcwMachineState machine.
> + socket_id = core_id / topo->num_cores;
> + /*
...snip...
> +
> +static int setup_stsi(S390CPU *cpu, SysIB_151x *sysib, int level)
> +{
> + S390Topology *topo = (S390Topology *)cpu->machine_data;
Sorry, wrong too this must be:
S390CcwMachineState *s390ms = cpu->machine_data;
S390Topology *topo = S390_CPU_TOPOLOGY(s390ms->topology);
> + char *p = sysib->tle;
> +
> + sysib->mnest = level;
> + switch (level) {
> + case 2:
> + sysib->mag[S390_TOPOLOGY_MAG2] = topo->num_sockets;
> + sysib->mag[S390_TOPOLOGY_MAG1] = topo->num_cores;
> + p = s390_top_set_level2(topo, p);
> + break;
> + }
> +
> + return p - (char *)sysib;
> +}
> +
Regards,
Pierre
--
Pierre Morel
IBM Lab Boeblingen
next prev parent reply other threads:[~2022-12-06 14:45 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-11-29 17:41 [PATCH v12 0/7] s390x: CPU Topology Pierre Morel
2022-11-29 17:42 ` [PATCH v12 1/7] s390x/cpu topology: Creating CPU topology device Pierre Morel
2022-12-01 9:08 ` Thomas Huth
2022-12-01 9:37 ` Pierre Morel
2022-12-06 9:31 ` Janis Schoetterl-Glausch
2022-12-06 10:32 ` Pierre Morel
2022-12-06 13:35 ` Janis Schoetterl-Glausch
2022-12-06 14:35 ` Pierre Morel
2022-12-06 21:06 ` Janis Schoetterl-Glausch
2022-12-07 10:00 ` Pierre Morel
2022-12-07 11:38 ` Janis Schoetterl-Glausch
2022-12-07 11:52 ` Pierre Morel
2022-11-29 17:42 ` [PATCH v12 2/7] s390x/cpu topology: reporting the CPU topology to the guest Pierre Morel
2022-12-06 9:48 ` Janis Schoetterl-Glausch
2022-12-06 10:38 ` Pierre Morel
2022-12-06 14:44 ` Pierre Morel [this message]
2022-12-07 9:12 ` Cédric Le Goater
2022-12-07 9:58 ` Pierre Morel
2022-11-29 17:42 ` [PATCH v12 3/7] s390x/cpu_topology: resetting the Topology-Change-Report Pierre Morel
2022-12-06 9:50 ` Janis Schoetterl-Glausch
2022-12-06 11:51 ` Pierre Morel
2022-11-29 17:42 ` [PATCH v12 4/7] s390x/cpu_topology: CPU topology migration Pierre Morel
2022-11-29 17:42 ` [PATCH v12 5/7] s390x/cpu_topology: interception of PTF instruction Pierre Morel
2022-11-29 17:42 ` [PATCH v12 6/7] s390x/cpu_topology: activating CPU topology Pierre Morel
2022-12-01 10:15 ` Thomas Huth
2022-12-01 11:52 ` Pierre Morel
2022-12-02 9:05 ` Thomas Huth
2022-12-02 14:08 ` Pierre Morel
2022-12-02 14:26 ` Thomas Huth
2022-12-05 13:29 ` Pierre Morel
2022-11-29 17:42 ` [PATCH v12 7/7] docs/s390x: document s390x cpu topology Pierre Morel
2022-12-01 8:45 ` [PATCH v12 0/7] s390x: CPU Topology Cédric Le Goater
2022-12-01 13:23 ` Pierre Morel
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=8c6ae27d-ac83-505f-cf2f-df30c3612e6f@linux.ibm.com \
--to=pmorel@linux.ibm.com \
--cc=armbru@redhat.com \
--cc=berrange@redhat.com \
--cc=borntraeger@de.ibm.com \
--cc=clg@kaod.org \
--cc=cohuck@redhat.com \
--cc=david@redhat.com \
--cc=eblake@redhat.com \
--cc=ehabkost@redhat.com \
--cc=frankja@linux.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=marcel.apfelbaum@gmail.com \
--cc=mst@redhat.com \
--cc=nrb@linux.ibm.com \
--cc=pasic@linux.ibm.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=scgl@linux.ibm.com \
--cc=seiden@linux.ibm.com \
--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).