On Tue, Nov 01, 2022 at 03:10:42PM +0800, Yicong Yang wrote:
> From: Yicong Yang <[email protected]>
> 
> This series mainly change the policy for building a cluster topology node
> in PPTT. Previously we'll always build a cluster node in PPTT without
> asking the user, after this set the cluster node will be built only the
> the user specify through "-smp clusters=X".
> 
> One problem is related to this but not fully caused by this, see the
> discussion in [*]. When booting the VM with `-smp 8` and 4 numa nodes,
> the linux scheduling domains in the VM misses the NUMA domains. It's
> because the MC level span extends to Cluster level (which is generated
> by the Qemu by default) that spans all the cpus in the system, then the
> scheduling domain building stops at MC level since it already includes all
> the cpus.
> 
> Considering cluster is an optional level and most platforms don't have it,
> they may even don't realize this is built and a always build policy cannot
> emulate the real topology on these platforms. So in this series improve the
> policy to only generate cluster when the user explicitly want it.
> 
> Update the tests and test tables accordingly.

I think we can classify this as a bugfix and so allow after
the freeze, however, this needs ack from ARM maintainers then.


> [*] 
> https://lore.kernel.org/lkml/[email protected]/
> 
> Change since v3:
> - Improve and attach the diff of the affected ACPI tables in the commit, and 
> minor cleanups
> Link: 
> https://lore.kernel.org/qemu-devel/[email protected]/
> 
> Change since v2:
> - Add tag from Micheal, thanks
> - Handle the tests changes with bios-tables-test-allowed-diff.h, Per Micheal
> - Address the comments per Yanan
> Link: 
> https://lore.kernel.org/qemu-devel/[email protected]/
> 
> Change since v1:
> - Only includes the test tables which is really needed
> - Enrich the commit
> Link: 
> https://lore.kernel.org/qemu-devel/[email protected]/
> 
> Yicong Yang (6):
>   tests: virt: Allow changes to PPTT test table
>   hw/acpi/aml-build: Only generate cluster node in PPTT when specified
>   tests: virt: Update expected ACPI tables for virt test
>   tests: acpi: Add and whitelist *.topology blobs
>   tests: acpi: aarch64: Add topology test for aarch64
>   tests: acpi: aarch64: Add *.topology tables
> 
>  hw/acpi/aml-build.c                |   2 +-
>  hw/core/machine-smp.c              |   2 ++
>  include/hw/boards.h                |   3 +++
>  qemu-options.hx                    |   3 +++
>  tests/data/acpi/virt/APIC.topology | Bin 0 -> 700 bytes
>  tests/data/acpi/virt/DSDT.topology | Bin 0 -> 5398 bytes
>  tests/data/acpi/virt/PPTT          | Bin 96 -> 76 bytes
>  tests/data/acpi/virt/PPTT.topology | Bin 0 -> 336 bytes
>  tests/qtest/bios-tables-test.c     |  19 +++++++++++++++++++
>  9 files changed, 28 insertions(+), 1 deletion(-)
>  create mode 100644 tests/data/acpi/virt/APIC.topology
>  create mode 100644 tests/data/acpi/virt/DSDT.topology
>  create mode 100644 tests/data/acpi/virt/PPTT.topology
> 
> -- 
> 2.24.0


Reply via email to