[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v8 0/7] Allow hotplug of s390 CPUs

From: Matthew Rosato
Subject: [Qemu-devel] [PATCH v8 0/7] Allow hotplug of s390 CPUs
Date: Thu, 3 Mar 2016 16:30:26 -0500

Changes from v7->v8:

* Patch 3: Rather than using cpu_index to set cpu_num temporarily, squash 
  in pieces from other patches -- specifically next_cpu_id and move of 
  cpu_exec_init to realizefn (David)
* Patch 4: New patch, splits out toleration of max_cpus (Igor)
* Patch 5: 
     * use hotplug_dev instead of qdev_get_machine (Igor)
     * Add missing g_free(name) (Igor)
* Patch 6:
     * Change s390_new_cpu to take cpu_model parm.  Move to helper.c, call 
       s390_new_cpu from cpu_s390x_init.  (David)
     * s/local_err/err/ (David)
     * Drop getter routine for id property, move some sanity checking from 
       setter to realize (David)
     * Drop unnecessary unref (David)

As discussed in the KVM call, we will go ahead with cpu_add for 
s390x to get cpu hotplug functionality in s390x now, until
architectures that require a more robust hotplug interface
settle on a design.

To configure a guest with 2 CPUs online at 
boot and 4 maximum:

qemu -smp 2,maxcpus=4

Or, when using libvirt:
    <vcpu current="2">4</vcpu>

To subsequently hotplug a CPU:

Issue 'cpu-add <id>' from qemu monitor, or use virsh setvcpus --count <n> 
<domain>, where <n> is the total number of desired guest CPUs.

At this point, the guest must bring the CPU online for use -- This can be 
achieved via "echo 1 > /sys/devices/system/cpu/cpuX/online" or via a management 
tool like cpuplugd.

This patch set is based on work previously done by Jason Herne.

Matthew Rosato (7):
  s390x/cpu: Cleanup init in preparation for hotplug
  s390x/cpu: Set initial CPU state in common routine
  s390x/cpu: Get rid of side effects when creating a vcpu
  s390x/cpu: Tolerate max_cpus
  s390x/cpu: Add CPU property links
  s390x/cpu: Add error handling to cpu creation
  s390x/cpu: Allow hotplug of CPUs

 hw/s390x/s390-virtio-ccw.c | 49 ++++++++++++++++++++++++++-
 hw/s390x/s390-virtio.c     | 36 +++++++++++---------
 hw/s390x/s390-virtio.h     |  2 +-
 target-s390x/cpu-qom.h     |  3 ++
 target-s390x/cpu.c         | 83 +++++++++++++++++++++++++++++++++++++++++++---
 target-s390x/cpu.h         |  2 ++
 target-s390x/helper.c      | 42 +++++++++++++++++++++--
 7 files changed, 192 insertions(+), 25 deletions(-)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]