Hi, This is the next version of CPU hotplug support patchset for PowerPC sPAPR guests. This is a split-out from the previous version (v3) that was carrying CPU and memory hotplug together. This patchset applies on spapr-next branch of David Gibson's tree.
In the previous version, I was doing CPU addition at socket granularity. One hotplug request would add one complete CPU socket with all the cores and threads as per the boot time topology specification. Based on the feedback for v3, I am switching back to earlier method wherein I don't have the notion of socket device. In this version I don't create any additional device abstraction over CPU device, but use the existing CPU device and add full cores at once. One hotplug request will add a complete core with all the underlying threads. I have enabled device_add based hotplug for POWER8 family for processors and currently the semantics looks like this: (qemu) device_add POWER8-powerpc64-cpu,id=cpu8 v3: https://lists.nongnu.org/archive/html/qemu-devel/2015-04/msg02910.html Bharata B Rao (10): exec: Remove cpu from cpus list during cpu_exec_exit() exec: Do vmstate unregistration from cpu_exec_exit() cpus: Add a sync version of cpu_remove() xics_kvm: Add cpu_destroy method to XICS spapr: Create pseries-2.5 machine spapr: Enable CPU hotplug for pseries-2.5 and add CPU DRC DT entries spapr: CPU hotplug support spapr: Support topologies with unfilled cores spapr: CPU hot unplug support target-ppc: Enable CPU hotplug for POWER8 CPU family Gu Zheng (1): cpus: Reclaim vCPU objects cpus.c | 55 ++++++++ exec.c | 30 +++++ hw/intc/xics.c | 12 ++ hw/intc/xics_kvm.c | 9 ++ hw/ppc/spapr.c | 300 +++++++++++++++++++++++++++++++++++++++++++- hw/ppc/spapr_events.c | 3 + hw/ppc/spapr_rtas.c | 11 ++ include/hw/ppc/spapr.h | 1 + include/hw/ppc/xics.h | 2 + include/qom/cpu.h | 19 +++ include/sysemu/kvm.h | 1 + kvm-all.c | 57 ++++++++- kvm-stub.c | 5 + target-ppc/translate_init.c | 10 ++ 14 files changed, 511 insertions(+), 4 deletions(-) -- 2.1.0