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

Zhao Liu posted 4 patches 11 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20230620103958.3907565-1-zhao1.liu@linux.intel.com
Maintainers: "Michael S. Tsirkin" <mst@redhat.com>, Igor Mammedov <imammedo@redhat.com>, Ani Sinha <anisinha@redhat.com>, Eduardo Habkost <eduardo@habkost.net>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Yanan Wang <wangyanan55@huawei.com>
There is a newer version of this series
hw/smbios/smbios.c  | 16 ++++++++++------
include/hw/boards.h | 12 ++++++++++++
2 files changed, 22 insertions(+), 6 deletions(-)
[PATCH v3 0/4] hw/smbios: Cleanup topology related variables
Posted by Zhao Liu 11 months ago
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(-)

-- 
2.34.1
Re: [PATCH v3 0/4] hw/smbios: Cleanup topology related variables
Posted by Igor Mammedov 10 months, 3 weeks ago
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(-)
>
Re: [PATCH v3 0/4] hw/smbios: Cleanup topology related variables
Posted by Zhao Liu 10 months, 3 weeks ago
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(-)
> > 
>