On Tue, 20 Jun 2023 18:39:54 +0800 Zhao Liu <zhao1....@linux.intel.com> wrote:
> From: Zhao Liu <zhao1....@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(-) >