All of lore.kernel.org
 help / color / mirror / Atom feed
From: pierre <pierre@imap.linux.ibm.com>
To: Nina Schoetterl-Glausch <nsg@linux.ibm.com>
Cc: Thomas Huth <thuth@redhat.com>,
	Pierre Morel <pmorel@linux.ibm.com>,
	qemu-s390x@nongnu.org, qemu-devel@nongnu.org,
	borntraeger@de.ibm.com, pasic@linux.ibm.com,
	richard.henderson@linaro.org, david@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, frankja@linux.ibm.com,
	berrange@redhat.com, clg@kaod.org
Subject: Re: [PATCH v16 02/11] s390x/cpu topology: add topology entries on CPU hotplug
Date: Thu, 23 Feb 2023 15:35:12 +0100	[thread overview]
Message-ID: <813e19dfbe961d9c376e86a7d0faee61@imap.linux.ibm.com> (raw)
In-Reply-To: <969c9ec842174876d514d082afe1c383baf58b99.camel@linux.ibm.com>

On 2023-02-23 15:13, Nina Schoetterl-Glausch wrote:
> On Thu, 2023-02-23 at 15:06 +0100, pierre wrote:
>> On 2023-02-23 13:53, Thomas Huth wrote:
>> > On 22/02/2023 15.20, Pierre Morel wrote:
>> > > The topology information are attributes of the CPU and are
>> > > specified during the CPU device creation.
>> > ...
>> > > diff --git a/include/hw/s390x/cpu-topology.h
>> > > b/include/hw/s390x/cpu-topology.h
>> > > index 83f31604cc..fa7f885a9f 100644
>> > > --- a/include/hw/s390x/cpu-topology.h
>> > > +++ b/include/hw/s390x/cpu-topology.h
>> > > @@ -10,6 +10,47 @@
>> > >   #ifndef HW_S390X_CPU_TOPOLOGY_H
>> > >   #define HW_S390X_CPU_TOPOLOGY_H
>> > >   +#include "qemu/queue.h"
>> > > +#include "hw/boards.h"
>> > > +#include "qapi/qapi-types-machine-target.h"
>> > > +
>> > >   #define S390_TOPOLOGY_CPU_IFL   0x03
>> > >   +typedef struct S390Topology {
>> > > +    uint8_t *cores_per_socket;
>> > > +    CpuTopology *smp;
>> > > +    CpuS390Polarization polarization;
>> > > +} S390Topology;
>> > > +
>> > > +#ifdef CONFIG_KVM
>> > > +bool s390_has_topology(void);
>> > > +void s390_topology_setup_cpu(MachineState *ms, S390CPU *cpu, Error
>> > > **errp);
>> > > +#else
>> > > +static inline bool s390_has_topology(void)
>> > > +{
>> > > +       return false;
>> > > +}
>> > > +static inline void s390_topology_setup_cpu(MachineState *ms,
>> > > +                                           S390CPU *cpu,
>> > > +                                           Error **errp) {}
>> > > +#endif
>> > > +
>> > > +extern S390Topology s390_topology;
>> > > +int s390_socket_nb(S390CPU *cpu);
>> > > +
>> > > +static inline int s390_std_socket(int n, CpuTopology *smp)
>> > > +{
>> > > +    return (n / smp->cores) % smp->sockets;
>> > > +}
>> > > +
>> > > +static inline int s390_std_book(int n, CpuTopology *smp)
>> > > +{
>> > > +    return (n / (smp->cores * smp->sockets)) % smp->books;
>> > > +}
>> > > +
>> > > +static inline int s390_std_drawer(int n, CpuTopology *smp)
>> > > +{
>> > > +    return (n / (smp->cores * smp->sockets * smp->books)) %
>> > > smp->books;
>> >
>> > Shouldn't that be " % smp->drawers" instead?
>> 
>> /o\  Yes it is of course.
>> thanks.
> 
> You can also just drop the modulo, since
> n < core * sockets * books * drawers. Not that % drawers does any harm 
> ofc.
>> 
> [...]

Yes right, thanks. May be I keep it in case there is another level one 
of these days.

Regards,
Pierre


  reply	other threads:[~2023-02-23 14:55 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-22 14:20 [PATCH v16 00/11] s390x: CPU Topology Pierre Morel
2023-02-22 14:20 ` [PATCH v16 01/11] s390x/cpu topology: add s390 specifics to CPU topology Pierre Morel
2023-02-22 14:20 ` [PATCH v16 02/11] s390x/cpu topology: add topology entries on CPU hotplug Pierre Morel
2023-02-23 12:53   ` Thomas Huth
2023-02-23 14:06     ` pierre
2023-02-23 14:13       ` Nina Schoetterl-Glausch
2023-02-23 14:35         ` pierre [this message]
2023-02-22 14:20 ` [PATCH v16 03/11] target/s390x/cpu topology: handle STSI(15) and build the SYSIB Pierre Morel
2023-02-23 13:30   ` Thomas Huth
2023-02-23 14:27     ` pierre
2023-02-27 13:21   ` Nina Schoetterl-Glausch
2023-03-08 15:24     ` Pierre Morel
2023-02-22 14:20 ` [PATCH v16 04/11] s390x/sclp: reporting the maximum nested topology entries Pierre Morel
2023-02-22 14:20 ` [PATCH v16 05/11] s390x/cpu topology: resetting the Topology-Change-Report Pierre Morel
2023-02-22 14:21 ` [PATCH v16 06/11] s390x/cpu topology: interception of PTF instruction Pierre Morel
2023-02-27 12:39   ` Thomas Huth
2023-02-27 14:12     ` Pierre Morel
2023-02-22 14:21 ` [PATCH v16 07/11] target/s390x/cpu topology: activating CPU topology Pierre Morel
2023-02-27 13:26   ` Thomas Huth
2023-02-27 14:13     ` Pierre Morel
2023-02-22 14:21 ` [PATCH v16 08/11] qapi/s390x/cpu topology: set-cpu-topology monitor command Pierre Morel
2023-02-24 17:15   ` Nina Schoetterl-Glausch
2023-02-27  7:59     ` Thomas Huth
2023-02-27 10:49       ` Nina Schoetterl-Glausch
2023-02-27 12:25         ` Markus Armbruster
2023-02-27 12:51           ` Nina Schoetterl-Glausch
2023-02-27 15:34             ` Markus Armbruster
2023-02-27 10:57     ` Pierre Morel
2023-02-27 11:26       ` Thomas Huth
2023-02-27 12:15       ` Nina Schoetterl-Glausch
2023-02-27 14:11         ` Pierre Morel
2023-03-02 15:00     ` Pierre Morel
2023-02-27  8:26   ` Pierre Morel
2023-02-27  8:52     ` [PATCH v17 08/12] " Pierre Morel
2023-02-27  8:52       ` [PATCH v17 12/12] machine: adding s390 topology to info hotpluggable-cpus Pierre Morel
2023-02-22 14:21 ` [PATCH v16 09/11] machine: adding s390 topology to query-cpu-fast Pierre Morel
2023-02-27 13:27   ` Thomas Huth
2023-02-27 14:13     ` Pierre Morel
2023-02-22 14:21 ` [PATCH v16 10/11] qapi/s390x/cpu topology: CPU_POLARIZATION_CHANGE qapi event Pierre Morel
2023-02-27 13:32   ` Thomas Huth
2023-02-27 14:14     ` Pierre Morel
2023-02-22 14:21 ` [PATCH v16 11/11] docs/s390x/cpu topology: document s390x cpu topology Pierre Morel
2023-02-27 13:58   ` Thomas Huth
2023-02-27 14:17     ` Pierre Morel
2023-02-27 14:27       ` Thomas Huth
2023-02-27 17:34         ` Pierre Morel
2023-03-01 15:52   ` Nina Schoetterl-Glausch
2023-03-02  8:58     ` Pierre Morel
2023-02-27 14:00 ` [PATCH v16 00/11] s390x: CPU Topology Thomas Huth
2023-02-27 14:20   ` 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=813e19dfbe961d9c376e86a7d0faee61@imap.linux.ibm.com \
    --to=pierre@imap.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=nsg@linux.ibm.com \
    --cc=pasic@linux.ibm.com \
    --cc=pbonzini@redhat.com \
    --cc=pmorel@linux.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.