Update the `AcpiCpuStatus` for `is_enabled` and `is_present` accordingly when vCPUs are hot-plugged or hot-unplugged, taking into account the *persistence* of the vCPUs.
Signed-off-by: Salil Mehta <salil.me...@huawei.com> --- hw/acpi/cpu.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c index 083c4010c2..700aa855e9 100644 --- a/hw/acpi/cpu.c +++ b/hw/acpi/cpu.c @@ -291,6 +291,8 @@ void acpi_cpu_plug_cb(HotplugHandler *hotplug_dev, } cdev->cpu = CPU(dev); + cdev->is_present = true; + cdev->is_enabled = true; if (dev->hotplugged) { cdev->is_inserting = true; acpi_send_event(DEVICE(hotplug_dev), ACPI_CPU_HOTPLUG_STATUS); @@ -322,6 +324,11 @@ void acpi_cpu_unplug_cb(CPUHotplugState *cpu_st, return; } + cdev->is_enabled = false; + if (!acpi_persistent_cpu(CPU(dev))) { + cdev->is_present = false; + } + cdev->cpu = NULL; } -- 2.34.1