All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v7 00/13] sPAPR CPU hotplug
@ 2016-01-28  5:49 Bharata B Rao
  2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores Bharata B Rao
                   ` (12 more replies)
  0 siblings, 13 replies; 37+ messages in thread
From: Bharata B Rao @ 2016-01-28  5:49 UTC (permalink / raw)
  To: qemu-devel
  Cc: mjrosato, ehabkost, aik, Bharata B Rao, mdroth, agraf, pbonzini,
	qemu-ppc, tyreld, nfont, imammedo, afaerber, david

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

^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2016-02-19 15:21 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-28  5:49 [Qemu-devel] [PATCH v7 00/13] sPAPR CPU hotplug Bharata B Rao
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 01/13] machine: Don't allow CPU toplogies with partially filled cores Bharata B Rao
2016-01-28 19:04   ` Eduardo Habkost
2016-01-29  3:52   ` David Gibson
2016-01-29 14:24     ` Eduardo Habkost
2016-01-29 15:10       ` Igor Mammedov
2016-01-29 15:36         ` Eduardo Habkost
2016-01-29 16:52           ` Igor Mammedov
2016-01-29 17:24             ` Eduardo Habkost
2016-02-01  9:41               ` Igor Mammedov
2016-02-03 17:38                 ` Eduardo Habkost
2016-02-04  9:38                   ` Igor Mammedov
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 02/13] exec: Remove cpu from cpus list during cpu_exec_exit() Bharata B Rao
2016-01-28 19:19   ` Eduardo Habkost
2016-01-29  6:14     ` Bharata B Rao
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 03/13] exec: Do vmstate unregistration from cpu_exec_exit() Bharata B Rao
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 04/13] cpu: Don't realize CPU from cpu_generic_init() Bharata B Rao
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 05/13] cpu: Reclaim vCPU objects Bharata B Rao
2016-02-19 15:21   ` Thomas Huth
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 06/13] cpu: Add a sync version of cpu_remove() Bharata B Rao
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 07/13] xics, xics_kvm: Handle CPU unplug correctly Bharata B Rao
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 08/13] target-ppc: Introduce PowerPC specific CPU core device Bharata B Rao
2016-02-01  2:39   ` David Gibson
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 09/13] spapr: Enable CPU hotplug for pseries-2.6 and add CPU DRC DT entries Bharata B Rao
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 10/13] spapr: CPU hotplug support Bharata B Rao
2016-02-01  3:07   ` David Gibson
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 11/13] spapr: CPU hot unplug support Bharata B Rao
2016-02-01  3:13   ` David Gibson
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 12/13] qmp: Add query-ppc-cpu-cores command Bharata B Rao
2016-01-28 20:52   ` Eric Blake
2016-01-29  6:34     ` Bharata B Rao
2016-01-29 15:45   ` Igor Mammedov
2016-02-01  8:43     ` Bharata B Rao
2016-02-01  9:56       ` Igor Mammedov
2016-01-28  5:49 ` [Qemu-devel] [PATCH v7 13/13] hmp: Add "info ppc-cpu-cores" command Bharata B Rao
2016-01-28 21:56   ` Eric Blake
2016-01-29  6:49     ` Bharata B Rao

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.