[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/8] add support for cpu hot-unplug with SMI broadcast enabled
From: |
Igor Mammedov |
Subject: |
[PATCH 0/8] add support for cpu hot-unplug with SMI broadcast enabled |
Date: |
Fri, 4 Dec 2020 12:09:31 -0500 |
Changelog:
since RFC:
- split one big patch on smaller chunks
- clear bit #4 in CPU eject
- drop bit #4 toggle semantics and let it set only to 1 from guest side
- do not allow unplug without hotplug
- update expected ACPI tables to let CI pass
It's QEMU side to support CPU hot-unplug when using OVMF as firmware with SMI
broadcast enabled (default). It adds new bit in CPU hotplug hw, to mark CPU
as pending for removal by firmware and passes control to it to perform CPU
eject once it's ready (i.e. forgot and no longer uses that CPU).
Patches 2-7 are preparatory, adding neccesary HW and ACPI bits for the feature
and the last patch enables feature by default since 6.0 machine type.
Cornelia Huck (1):
hw: add compat machines for 6.0
Igor Mammedov (7):
acpi: cpuhp: introduce 'firmware performs eject' status/control bits
x86: acpi: introduce AcpiPmInfo::smi_on_cpu_unplug
tests/acpi: allow expected files change
x86: acpi: let the firmware handle pending "CPU remove" events in SMM
tests/acpi: update expected files
x86: ich9: factor out "guest_cpu_hotplug_features"
x86: ich9: let firmware negotiate 'CPU hot-unplug with SMI' feature
include/hw/acpi/cpu.h | 2 ++
include/hw/boards.h | 3 +++
include/hw/i386/pc.h | 3 +++
docs/specs/acpi_cpu_hotplug.txt | 19 ++++++++++++++-----
hw/acpi/cpu.c | 24 ++++++++++++++++++++++--
hw/acpi/trace-events | 2 ++
hw/arm/virt.c | 9 ++++++++-
hw/core/machine.c | 3 +++
hw/i386/acpi-build.c | 5 +++++
hw/i386/pc.c | 5 +++++
hw/i386/pc_piix.c | 14 +++++++++++++-
hw/i386/pc_q35.c | 13 ++++++++++++-
hw/isa/lpc_ich9.c | 16 +++++++++++++---
hw/ppc/spapr.c | 15 +++++++++++++--
hw/s390x/s390-virtio-ccw.c | 14 +++++++++++++-
tests/data/acpi/pc/DSDT | Bin 5060 -> 5067 bytes
tests/data/acpi/pc/DSDT.acpihmat | Bin 6385 -> 6392 bytes
tests/data/acpi/pc/DSDT.bridge | Bin 6919 -> 6926 bytes
tests/data/acpi/pc/DSDT.cphp | Bin 5524 -> 5531 bytes
tests/data/acpi/pc/DSDT.dimmpxm | Bin 6714 -> 6721 bytes
tests/data/acpi/pc/DSDT.hpbridge | Bin 5021 -> 5028 bytes
tests/data/acpi/pc/DSDT.hpbrroot | Bin 3079 -> 3086 bytes
tests/data/acpi/pc/DSDT.ipmikcs | Bin 5132 -> 5139 bytes
tests/data/acpi/pc/DSDT.memhp | Bin 6419 -> 6426 bytes
tests/data/acpi/pc/DSDT.numamem | Bin 5066 -> 5073 bytes
tests/data/acpi/pc/DSDT.roothp | Bin 5256 -> 5263 bytes
tests/data/acpi/q35/DSDT | Bin 7796 -> 7803 bytes
tests/data/acpi/q35/DSDT.acpihmat | Bin 9121 -> 9128 bytes
tests/data/acpi/q35/DSDT.bridge | Bin 7814 -> 7821 bytes
tests/data/acpi/q35/DSDT.cphp | Bin 8260 -> 8267 bytes
tests/data/acpi/q35/DSDT.dimmpxm | Bin 9450 -> 9457 bytes
tests/data/acpi/q35/DSDT.ipmibt | Bin 7871 -> 7878 bytes
tests/data/acpi/q35/DSDT.memhp | Bin 9155 -> 9162 bytes
tests/data/acpi/q35/DSDT.mmio64 | Bin 8927 -> 8934 bytes
tests/data/acpi/q35/DSDT.numamem | Bin 7802 -> 7809 bytes
tests/data/acpi/q35/DSDT.tis | Bin 8402 -> 8409 bytes
36 files changed, 131 insertions(+), 16 deletions(-)
--
2.27.0
- [PATCH 0/8] add support for cpu hot-unplug with SMI broadcast enabled,
Igor Mammedov <=
- [PATCH 5/8] x86: acpi: let the firmware handle pending "CPU remove" events in SMM, Igor Mammedov, 2020/12/04
- [PATCH 6/8] tests/acpi: update expected files, Igor Mammedov, 2020/12/04
- [PATCH 7/8] x86: ich9: factor out "guest_cpu_hotplug_features", Igor Mammedov, 2020/12/04
- [PATCH 1/8] hw: add compat machines for 6.0, Igor Mammedov, 2020/12/04
- [PATCH 2/8] acpi: cpuhp: introduce 'firmware performs eject' status/control bits, Igor Mammedov, 2020/12/04