OS like Linux is using PPTT processor node's identical implementation
flag [1] to infer whether the whole system or a certain CPU cluster is
homogeneous or not [2]. QEMU currently only support building homogeneous
system, set the flag to indicate the fact. Build a root node in PPTT for
indicates the identical implementation which is needed for a
multi-socket system. Update the related PPTT tables as well.

We observed an issue interacting with Loongarch with this patchset, and
there was a discussion about it in [3], and eventually thanks to Bibo we
have a patchset that fixed the interactions with Loongarch in the [4].

History:
    * v5->v6: Rebased on 09be8a511a2e278b45729d7b065d30c68dd699d0
    * v4->v5: fixed a typo
    * v3->v4: PPTT rev to 2
    * v2->v3: rebase to 10

[1] ACPI 6.5 Table 5.158: Processor Structure Flags
[2] 
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/acpi/pptt.c?h=v6.11-rc1#n810
[3] 
https://lore.kernel.org/all/99a37f40-56dc-ab7a-86ff-1a9dcb3cc...@loongson.cn/
[4] 
https://lore.kernel.org/qemu-devel/20250604065502.1114098-1-maob...@loongson.cn/

DEPEND-ON: Message-ID: <20250604065502.1114098-1-maob...@loongson.cn>

Yicong Yang (4):
  tests: virt: Allow changes to PPTT test table
  hw/acpi/aml-build: Set identical implementation flag for PPTT
    processor nodes
  hw/acpi/aml-build: Build a root node in the PPTT table
  tests: virt: Update expected ACPI tables for virt test

 hw/acpi/aml-build.c                           |  24 +++++++++++++++---
 tests/data/acpi/aarch64/virt/PPTT             | Bin 76 -> 96 bytes
 .../data/acpi/aarch64/virt/PPTT.acpihmatvirt  | Bin 156 -> 176 bytes
 tests/data/acpi/aarch64/virt/PPTT.topology    | Bin 336 -> 356 bytes
 4 files changed, 20 insertions(+), 4 deletions(-)

-- 
2.43.0


Reply via email to