In the SMP configuration, we should either specify a topology
parameter with a reasonable value (equal to or greater than 1)
or just leave it omitted and QEMU will calculate its value.
Configurations which explicitly specify the topology parameters
as zero like "sockets=0" are meaningless, so disallow them.

However; the commit 1e63fe685804d
(machine: pass QAPI struct to mc->smp_parse) has documented that
'0' has the same semantics as omitting a parameter in the qapi
comment for SMPConfiguration. So this patch fixes the doc and
also adds the corresponding sanity check in the smp parsers.

This patch originly comes form [1], and it was suggested that
this patch fixing the doc should be sent for 6.1 to avoid a
deprecation process in the future.

[1] https://lore.kernel.org/qemu-devel/ypwsthpiza3mf...@redhat.com/

v1->v2:
- move the check to machine_set_smp
- update qemu-option.hx
- v1: 
https://lore.kernel.org/qemu-devel/20210722021512.2600-1-wangyana...@huawei.com/

Yanan Wang (1):
  machine: Disallow specifying topology parameters as zero

 hw/core/machine.c | 14 ++++++++++++++
 qapi/machine.json |  6 +++---
 qemu-options.hx   | 12 +++++++-----
 3 files changed, 24 insertions(+), 8 deletions(-)

-- 
2.19.1


Reply via email to