On 29/09/21 04:58, Yanan Wang wrote:
> Hi,
>
> This is a new version (v12) with minor update suggested by Daniel
> and Philippe. Two new commits (#1 and #16) are added. Thanks!
Queued, thanks!
Paolo
> Summary of v12:
> 1) Specifying a CPU topology parameter as zero was implicitly allowed
> but undocumented before, while now it's explicitly deprecated.
>
> 2) Refactor/fixes of the smp parsers.
>
> 3) For consistency, maxcpus is now uniformly used to calculate the
> omitted topology members.
>
> 4) Improve the error reporting of the parsers.
>
> 5) It's also suggested that we should start to prefer cores over sockets
> over threads on the newer machine types, which will make the computed
> virtual topology more reflective of the real hardware. Related discussion
> can be found in [1].
> [1] https://lore.kernel.org/qemu-devel/YNIgInK00yNNI4Dy@redhat.com/
>
> 6) In order to reduce code duplication and ease the code maintenance,
> smp_parse() is converted into a generic enough parser for all arches,
> so that the arch-specific ones (e.g. pc_smp_parse) can be removed.
> It's also convenient to introduce more topology members to the generic
> parser in the future. Related discussions can be found in [2] and [3].
> [2] https://lore.kernel.org/qemu-devel/20210630115602.txmvmfe2jrzu7o67@gator.home/
> [3] https://lore.kernel.org/qemu-devel/YPFN83pKBt7F97kW@redhat.com/
>
> Changelogs:
>
> v11->v12:
> - add an extra commit 16/16 to make smp_parse() return a boolean (Philippe)
> - split the machine.json Doc fix out into a separate patch 01/16 (Daniel)
> - add R-bs for the series from Daniel and Philippe, thanks!
> - v11: https://lore.kernel.org/qemu-devel/20210928035755.11684-1-wangyanan55@huawei.com/
>
> v10->v11:
> - only update patch 11/14
> use GString APIs to build the cpu topology hierarchy string (Daniel)
> refine the comments of smp_parse()
> - v10: https://lore.kernel.org/qemu-devel/20210926084541.17352-1-wangyanan55@huawei.com/
>
> v9->v10:
> - rebased on latest upstream commit 11a1199846.
> there is no change of the patches in v10, except minor update
> in 08/14 to resolve merge conflict with master.
> - To make this series more acceptable, drop the last two patches
> about SMP unit test, since the scalability of the test is not
> optimally designed after rethinking of it. So I will resend the
> test related patches separately after refining them.
> - v9: https://lore.kernel.org/qemu-devel/20210910073025.16480-1-wangyanan55@huawei.com/
>
> Yanan Wang (16):
> qapi/machine: Fix an incorrect comment of SMPConfiguration
> machine: Deprecate "parameter=0" SMP configurations
> machine: Minor refactor/fix for the smp parsers
> machine: Uniformly use maxcpus to calculate the omitted parameters
> machine: Set the value of cpus to match maxcpus if it's omitted
> machine: Improve the error reporting of smp parsing
> qtest/numa-test: Use detailed -smp CLIs in pc_dynamic_cpu_cfg
> qtest/numa-test: Use detailed -smp CLIs in test_def_cpu_split
> machine: Prefer cores over sockets in smp parsing since 6.2
> machine: Use ms instead of global current_machine in sanity-check
> machine: Tweak the order of topology members in struct CpuTopology
> machine: Make smp_parse generic enough for all arches
> machine: Remove smp_parse callback from MachineClass
> machine: Move smp_prefer_sockets to struct SMPCompatProps
> machine: Put all sanity-check in the generic SMP parser
> machine: Make smp_parse return a boolean
>
> docs/about/deprecated.rst | 15 +++
> hw/arm/virt.c | 1 +
> hw/core/machine.c | 206 ++++++++++++++++++++++++++-----------
> hw/i386/pc.c | 63 +-----------
> hw/i386/pc_piix.c | 1 +
> hw/i386/pc_q35.c | 1 +
> hw/ppc/spapr.c | 1 +
> hw/s390x/s390-virtio-ccw.c | 1 +
> include/hw/boards.h | 23 +++--
> qapi/machine.json | 2 +-
> qemu-options.hx | 24 +++--
> tests/qtest/numa-test.c | 6 +-
> 12 files changed, 201 insertions(+), 143 deletions(-)
>
> --
> 2.19.1
>
>