mbox series

[v3,0/4] hw/smbios: Cleanup topology related variables

Message ID 20230620103958.3907565-1-zhao1.liu@linux.intel.com
Headers show
Series hw/smbios: Cleanup topology related variables | expand

Message

Zhao Liu June 20, 2023, 10:39 a.m. UTC
From: Zhao Liu <zhao1.liu@intel.com>

Hi all,

This is my v3 patch series based on 48ab886d3da4f ("Merge tag 'pull-
target-arm-20230619' of https://git.linaro.org/people/pmaydell/qemu-arm
into staging").

Compared with v2 [1], v3 introduces 2 helpers to wrap the calculation of
threads/cores per socket so that smbios can use these 2 helpers directly
to avoid calculation error caused by missing topology changes.

Also due to the introduction of these two helpers, I involve more people
for review of this v3.


Introduction
============

This patchset is split from my previous hybrid topology RFC [2].

There are three places for topology-related cleanup:

1. Fix the calculation of the number of sockets.

   Due to the misuse of the smp.cpus variable and the change in the
   meaning of smp.cores, the calculation of socket number in smbios is
   incorrect. This can be fixed by using smp.sockets directly.

2. Fix core count in type4.

   The meaning of smp.cores changed so that the calculation of cores
   per socket became wrong.

   v3 introduces the helper "machine_topo_get_cores_per_socket()" to
   wrap the calculation of cores per socket. This can help other modules
   avoid calculation error caused by missing topology changes.

3. Fix thread count in type4.

   I also found that the definition of thread count in type4 doesn't
   match the spec (smbios 3.0.0) and cleaned it up as well.

   Similar to core count, v3 uses a new helper to fix this.

[1]: https://lists.gnu.org/archive/html/qemu-devel/2023-06/msg00072.html
[2]: https://mail.gnu.org/archive/html/qemu-devel/2023-02/msg03205.html


Regards,
Zhao

---
Zhao Liu (4):
  machine: Add helpers to get cores/threads per socket
  hw/smbios: Fix smbios_smp_sockets caculation
  hw/smbios: Fix thread count in type4
  hw/smbios: Fix core count in type4

 hw/smbios/smbios.c  | 16 ++++++++++------
 include/hw/boards.h | 12 ++++++++++++
 2 files changed, 22 insertions(+), 6 deletions(-)

Comments

Igor Mammedov June 26, 2023, 1:48 p.m. UTC | #1
On Tue, 20 Jun 2023 18:39:54 +0800
Zhao Liu <zhao1.liu@linux.intel.com> wrote:

> From: Zhao Liu <zhao1.liu@intel.com>
> 
> Hi all,
> 
> This is my v3 patch series based on 48ab886d3da4f ("Merge tag 'pull-
> target-arm-20230619' of https://git.linaro.org/people/pmaydell/qemu-arm
> into staging").
> 
> Compared with v2 [1], v3 introduces 2 helpers to wrap the calculation of
> threads/cores per socket so that smbios can use these 2 helpers directly
> to avoid calculation error caused by missing topology changes.
> 
> Also due to the introduction of these two helpers, I involve more people
> for review of this v3.

other than nitpicking in patch 1/4, the series looks good to me.

> 
> 
> Introduction
> ============
> 
> This patchset is split from my previous hybrid topology RFC [2].
> 
> There are three places for topology-related cleanup:
> 
> 1. Fix the calculation of the number of sockets.
> 
>    Due to the misuse of the smp.cpus variable and the change in the
>    meaning of smp.cores, the calculation of socket number in smbios is
>    incorrect. This can be fixed by using smp.sockets directly.
> 
> 2. Fix core count in type4.
> 
>    The meaning of smp.cores changed so that the calculation of cores
>    per socket became wrong.
> 
>    v3 introduces the helper "machine_topo_get_cores_per_socket()" to
>    wrap the calculation of cores per socket. This can help other modules
>    avoid calculation error caused by missing topology changes.
> 
> 3. Fix thread count in type4.
> 
>    I also found that the definition of thread count in type4 doesn't
>    match the spec (smbios 3.0.0) and cleaned it up as well.
> 
>    Similar to core count, v3 uses a new helper to fix this.
> 
> [1]: https://lists.gnu.org/archive/html/qemu-devel/2023-06/msg00072.html
> [2]: https://mail.gnu.org/archive/html/qemu-devel/2023-02/msg03205.html
> 
> 
> Regards,
> Zhao
> 
> ---
> Zhao Liu (4):
>   machine: Add helpers to get cores/threads per socket
>   hw/smbios: Fix smbios_smp_sockets caculation
>   hw/smbios: Fix thread count in type4
>   hw/smbios: Fix core count in type4
> 
>  hw/smbios/smbios.c  | 16 ++++++++++------
>  include/hw/boards.h | 12 ++++++++++++
>  2 files changed, 22 insertions(+), 6 deletions(-)
>
Zhao Liu June 28, 2023, 3 a.m. UTC | #2
On Mon, Jun 26, 2023 at 03:48:17PM +0200, Igor Mammedov wrote:
> Date: Mon, 26 Jun 2023 15:48:17 +0200
> From: Igor Mammedov <imammedo@redhat.com>
> Subject: Re: [PATCH v3 0/4] hw/smbios: Cleanup topology related variables
> X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-redhat-linux-gnu)
> 
> On Tue, 20 Jun 2023 18:39:54 +0800
> Zhao Liu <zhao1.liu@linux.intel.com> wrote:
> 
> > From: Zhao Liu <zhao1.liu@intel.com>
> > 
> > Hi all,
> > 
> > This is my v3 patch series based on 48ab886d3da4f ("Merge tag 'pull-
> > target-arm-20230619' of https://git.linaro.org/people/pmaydell/qemu-arm
> > into staging").
> > 
> > Compared with v2 [1], v3 introduces 2 helpers to wrap the calculation of
> > threads/cores per socket so that smbios can use these 2 helpers directly
> > to avoid calculation error caused by missing topology changes.
> > 
> > Also due to the introduction of these two helpers, I involve more people
> > for review of this v3.
> 
> other than nitpicking in patch 1/4, the series looks good to me.

Thanks Igor! I'll fix the 1/4 and refresh a new version.

-Zhao

> 
> > 
> > 
> > Introduction
> > ============
> > 
> > This patchset is split from my previous hybrid topology RFC [2].
> > 
> > There are three places for topology-related cleanup:
> > 
> > 1. Fix the calculation of the number of sockets.
> > 
> >    Due to the misuse of the smp.cpus variable and the change in the
> >    meaning of smp.cores, the calculation of socket number in smbios is
> >    incorrect. This can be fixed by using smp.sockets directly.
> > 
> > 2. Fix core count in type4.
> > 
> >    The meaning of smp.cores changed so that the calculation of cores
> >    per socket became wrong.
> > 
> >    v3 introduces the helper "machine_topo_get_cores_per_socket()" to
> >    wrap the calculation of cores per socket. This can help other modules
> >    avoid calculation error caused by missing topology changes.
> > 
> > 3. Fix thread count in type4.
> > 
> >    I also found that the definition of thread count in type4 doesn't
> >    match the spec (smbios 3.0.0) and cleaned it up as well.
> > 
> >    Similar to core count, v3 uses a new helper to fix this.
> > 
> > [1]: https://lists.gnu.org/archive/html/qemu-devel/2023-06/msg00072.html
> > [2]: https://mail.gnu.org/archive/html/qemu-devel/2023-02/msg03205.html
> > 
> > 
> > Regards,
> > Zhao
> > 
> > ---
> > Zhao Liu (4):
> >   machine: Add helpers to get cores/threads per socket
> >   hw/smbios: Fix smbios_smp_sockets caculation
> >   hw/smbios: Fix thread count in type4
> >   hw/smbios: Fix core count in type4
> > 
> >  hw/smbios/smbios.c  | 16 ++++++++++------
> >  include/hw/boards.h | 12 ++++++++++++
> >  2 files changed, 22 insertions(+), 6 deletions(-)
> > 
>