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
