[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PATCH v7 00/13] sPAPR CPU hotplug
From: |
Bharata B Rao |
Subject: |
[Qemu-ppc] [PATCH v7 00/13] sPAPR CPU hotplug |
Date: |
Thu, 28 Jan 2016 11:19:42 +0530 |
Hi,
This is the 7th iteration of patchset that introduces CPU hotplug for
PowerPC sPAPR guests using device_add/device_del commands.
(qemu) device_add powerpc64-cpu-core,id=core1
The main change in this version is about adding "info ppc-cpu-cores"
QMP/HMP support to obtain information about PowerPC CPU cores.
The first 6 patches are generic changes.
1/13 machine: Don't allow CPU toplogies with partially filled cores
2/13 exec: Remove cpu from cpus list during cpu_exec_exit()
3/13 exec: Do vmstate unregistration from cpu_exec_exit()
4/13 cpu: Don't realize CPU from cpu_generic_init()
Above 4 patches can stand on their own and probably can be pushed
ahead of actual hotplug patches when found ready. Let me know if I
should pursue these in a separate patchset.
Out of the above 4, last three (2/13, 3/13, 4/13) are required by
s390 and have been posted in their CPU hotplug patchset.
5/13 cpu: Reclaim vCPU objects
Above patch is needed by x86 as well as s390 and has been posted in their
respective CPU hotplug patchsets.
6/13 cpu: Add a sync version of cpu_remove()
Above patch is needed by s390 and has been posted in their CPU hotplug
patchset.
The remaining patches are ppc/spapr specific. This patchset applies
on top of ppc-for-2.6 branch of David Gibson's tree.
Changes in v7
-------------
- Added two patches (12/13, 13/13) to obtain information about
ppc cpu cores via QMP/HMP.
- Don't populate MachineClass::validate_smp_config() for TYPE_MACINE
so that all archs are not affected and don't have to explicitly
disable the enforcement of partially filled cores requirement
as per Eduardo Habkost's suggestion. (01/13)
- Some minor code cleanups in 10/13 as per David Gibson's suggestion.
- Store the first thread representing the core in PowerPCCPUCore so
that it DRC index of the core can be easily found during DRC
attach (08/13, 11/13).
- Make unplug_list local to core release routine as per David (11/13).
v6: http://lists.gnu.org/archive/html/qemu-ppc/2016-01/msg00060.html
Bharata B Rao (12):
machine: Don't allow CPU toplogies with partially filled cores
exec: Remove cpu from cpus list during cpu_exec_exit()
exec: Do vmstate unregistration from cpu_exec_exit()
cpu: Don't realize CPU from cpu_generic_init()
cpu: Add a sync version of cpu_remove()
xics,xics_kvm: Handle CPU unplug correctly
target-ppc: Introduce PowerPC specific CPU core device
spapr: Enable CPU hotplug for pseries-2.6 and add CPU DRC DT entries
spapr: CPU hotplug support
spapr: CPU hot unplug support
qmp: Add query-ppc-cpu-cores command
hmp: Add "info ppc-cpu-cores" command
Gu Zheng (1):
cpu: Reclaim vCPU objects
cpus.c | 50 ++++++++
exec.c | 30 +++++
hmp-commands-info.hx | 16 +++
hmp.c | 31 +++++
hmp.h | 1 +
hw/core/machine.c | 23 ++++
hw/i386/pc.c | 1 +
hw/i386/pc_piix.c | 1 +
hw/i386/pc_q35.c | 1 +
hw/intc/xics.c | 14 +++
hw/intc/xics_kvm.c | 8 +-
hw/ppc/Makefile.objs | 1 +
hw/ppc/cpu-core.c | 152 +++++++++++++++++++++++
hw/ppc/spapr.c | 260 ++++++++++++++++++++++++++++++++++++++--
hw/ppc/spapr_events.c | 3 +
hw/ppc/spapr_rtas.c | 24 ++++
include/hw/boards.h | 4 +
include/hw/ppc/cpu-core.h | 33 +++++
include/hw/ppc/spapr.h | 9 ++
include/hw/ppc/xics.h | 1 +
include/qom/cpu.h | 18 +++
include/sysemu/kvm.h | 1 +
kvm-all.c | 57 ++++++++-
kvm-stub.c | 5 +
qapi-schema.json | 31 +++++
qmp-commands.hx | 51 ++++++++
qom/cpu.c | 6 -
stubs/Makefile.objs | 1 +
stubs/qmp_query_ppc_cpu_cores.c | 10 ++
target-arm/helper.c | 16 ++-
target-cris/cpu.c | 16 ++-
target-lm32/helper.c | 16 ++-
target-moxie/cpu.c | 16 ++-
target-openrisc/cpu.c | 16 ++-
target-ppc/translate_init.c | 24 +++-
target-sh4/cpu.c | 16 ++-
target-tricore/helper.c | 16 ++-
target-unicore32/helper.c | 16 ++-
vl.c | 5 +
39 files changed, 973 insertions(+), 27 deletions(-)
create mode 100644 hw/ppc/cpu-core.c
create mode 100644 include/hw/ppc/cpu-core.h
create mode 100644 stubs/qmp_query_ppc_cpu_cores.c
--
2.1.0
- [Qemu-ppc] [PATCH v7 00/13] sPAPR CPU hotplug,
Bharata B Rao <=
- [Qemu-ppc] [PATCH v7 03/13] exec: Do vmstate unregistration from cpu_exec_exit(), Bharata B Rao, 2016/01/28
- [Qemu-ppc] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores, Bharata B Rao, 2016/01/28
- Re: [Qemu-ppc] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores, Eduardo Habkost, 2016/01/28
- Re: [Qemu-ppc] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores, David Gibson, 2016/01/28
- Re: [Qemu-ppc] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores, Eduardo Habkost, 2016/01/29
- Re: [Qemu-ppc] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores, Igor Mammedov, 2016/01/29
- Re: [Qemu-ppc] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores, Eduardo Habkost, 2016/01/29
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores, Igor Mammedov, 2016/01/29
- Re: [Qemu-ppc] [Qemu-devel] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores, Eduardo Habkost, 2016/01/29
[Qemu-ppc] [PATCH v7 02/13] exec: Remove cpu from cpus list during cpu_exec_exit(), Bharata B Rao, 2016/01/28