mbox series

[v2,0/5] hw/smbios: add core_count2 to smbios table type 4

Message ID 20220731162141.178443-1-jusual@redhat.com (mailing list archive)
Headers show
Series hw/smbios: add core_count2 to smbios table type 4 | expand

Message

Julia Suvorova July 31, 2022, 4:21 p.m. UTC
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.

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_build.h             |   9 +-
 include/hw/firmware/smbios.h         |  11 ++
 hw/smbios/smbios.c                   |  18 +++-
 tests/qtest/bios-tables-test.c       | 148 ++++++++++++++++++++-------
 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
 7 files changed, 144 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

Comments

Michael S. Tsirkin Aug. 12, 2022, 9:46 a.m. UTC | #1
On Sun, Jul 31, 2022 at 06:21:36PM +0200, Julia Suvorova wrote:
> 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.

Looks good to me. I tagged this but just to help make sure it's
not lost pls ping me after the release.

> 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_build.h             |   9 +-
>  include/hw/firmware/smbios.h         |  11 ++
>  hw/smbios/smbios.c                   |  18 +++-
>  tests/qtest/bios-tables-test.c       | 148 ++++++++++++++++++++-------
>  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
>  7 files changed, 144 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.35.3