The SMBIOS 3.0 specification provides the ability to reflect over
255 cores. The 64-bit entry point has been used for a while, but
structure type 4 has not been updated before, so the dmidecode output
looked like this (-smp 280):
Handle 0x0400, DMI type 4, 42 bytes
Processor Information
...
Core Count: 24
Core Enabled: 24
Thread Count: 1
...
Big update in the bios-tables-test as it couldn't work with SMBIOS 3.0.
v3:
* rebase on fresh master
* crop lines to 80 characters [Igor]
* add conditions for cc2 field check in the test [Igor]
v2:
* generate tables type 4 of different sizes based on the
selected smbios version
* use SmbiosEntryPoint* types instead of creating new constants
* refactor smbios_cpu_test [Igor, Ani]
* clarify signature check [Igor]
* add comments with specifications and clarification of the structure loop [Ani]
Julia Suvorova (5):
hw/smbios: add core_count2 to smbios table type 4
bios-tables-test: teach test to use smbios 3.0 tables
tests/acpi: allow changes for core_count2 test
bios-tables-test: add test for number of cores > 255
tests/acpi: update tables for new core count test
hw/smbios/smbios.c | 19 +++-
hw/smbios/smbios_build.h | 9 +-
include/hw/firmware/smbios.h | 12 ++
tests/data/acpi/q35/APIC.core-count2 | Bin 0 -> 2478 bytes
tests/data/acpi/q35/DSDT.core-count2 | Bin 0 -> 32414 bytes
tests/data/acpi/q35/FACP.core-count2 | Bin 0 -> 244 bytes
tests/qtest/bios-tables-test.c | 158 ++++++++++++++++++++-------
7 files changed, 156 insertions(+), 42 deletions(-)
create mode 100644 tests/data/acpi/q35/APIC.core-count2
create mode 100644 tests/data/acpi/q35/DSDT.core-count2
create mode 100644 tests/data/acpi/q35/FACP.core-count2
--
2.37.3