This series is based on chen fan's previous i386 cpu hot remove patchset:
https://lists.nongnu.org/archive/html/qemu-devel/2013-12/msg04266.html
Via implementing ACPI standard methods _EJ0 in ACPI table, after Guest
OS remove one vCPU online, the fireware will store removed bitmap to
QEMU, then QEMU could know to notify the assigned vCPU of exiting.
Meanwhile, intruduce the QOM command 'device_del' to remove vCPU from
QEMU itself.
The whole work is based on the new hot plug/unplug framework, ,the unplug
request
callback does the pre-check and send the request, unplug callback does the
removal handling.
This series depends on tangchen's common hot plug/unplug enhance patchset.
[PATCH v2 0/5] Common unplug and unplug request cb for memory and CPU hot-unplug
https://lists.nongnu.org/archive/html/qemu-devel/2015-01/msg03929.html
The is the second half of the previous series:
[RFC V2 00/10] cpu: add device_add foo-x86_64-cpu and i386 cpu hot remove
support
https://lists.nongnu.org/archive/html/qemu-devel/2014-08/msg04779.html
If you want to test the series, you need to apply the 'device_add
foo-x86_64-cpu'
patchset first:
[PATCH v4 00/10] cpu: add device_add foo-x86_64-cpu support
https://lists.nongnu.org/archive/html/qemu-devel/2015-02/msg02584.html
---
Changelog since v2:
-drop ICC bus impl
-fix delete cpu exceed 32 issue
-fix bug about deleting the last cpu
Changelog since v1:
-rebase on the latest version.
-delete patch i386/cpu: add instance finalize callback, and put it into
patchset
[PATCH v3 0/6] cpu: add device_add foo-x86_64-cpu support.
Changelog since RFC:
-splited the i386 cpu hot remove into single thread.
-replaced apic_no with apic_id, so does the related stuff to make it
work with arbitrary CPU hotadd.
-add the icc_device_unrealize callback to handle apic unrealize.
-rework on the new hot plug/unplug platform.
---
Chen Fan (2):
x86: add x86_cpu_unrealizefn() for cpu apic remove
cpu hotplug: implement function cpu_status_write() for vcpu ejection
Gu Zheng (3):
acpi/cpu: add cpu hot unplug request callback function
acpi, pc: add cpu hot unplug callback support
cpus: reclaim allocated vCPU objects
Zhu Guihua (2):
acpi, pc: add cpu hot unplug request callback support
acpi/cpu: add cpu hot unplug callback function
cpus.c | 44 ++++++++++++++++++++
hw/acpi/cpu_hotplug.c | 87 ++++++++++++++++++++++++++++++++++++---
hw/acpi/ich9.c | 17 ++++++--
hw/acpi/piix4.c | 12 +++++-
hw/core/qdev.c | 2 +-
hw/i386/acpi-dsdt-cpu-hotplug.dsl | 16 ++++++-
hw/i386/kvm/apic.c | 5 +++
hw/i386/pc.c | 68 ++++++++++++++++++++++++++++--
hw/intc/apic.c | 9 ++++
hw/intc/apic_common.c | 21 ++++++----
include/hw/acpi/cpu_hotplug.h | 8 ++++
include/hw/i386/apic_internal.h | 1 +
include/hw/qdev-core.h | 1 +
include/qom/cpu.h | 9 ++++
include/sysemu/kvm.h | 1 +
kvm-all.c | 57 ++++++++++++++++++++++++-
target-i386/cpu.c | 46 +++++++++++++++++++++
17 files changed, 377 insertions(+), 27 deletions(-)
--
1.9.3