summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Hildenbrand2017-09-13 15:24:12 +0200
committerCornelia Huck2017-09-19 18:31:32 +0200
commitf2f3beb0040cbdad1b4098cbb11ecc102044bf6e (patch)
treee8c86d6772d5b65605691f0ba1a09abb62d0c265
parents390x: allow cpu hotplug via device_add (diff)
downloadqemu-f2f3beb0040cbdad1b4098cbb11ecc102044bf6e.tar.gz
qemu-f2f3beb0040cbdad1b4098cbb11ecc102044bf6e.tar.xz
qemu-f2f3beb0040cbdad1b4098cbb11ecc102044bf6e.zip
s390x: CPU hot unplug via device_del cannot work for now
device_del on a CPU will currently do nothing. Let's emit an error telling that this is will currently not work (there is no architecture support on s390x). Error message copied from ppc. (qemu) device_del cpu1 device_del cpu1 CPU hot unplug not supported on this machine Reviewed-by: Matthew Rosato <mjrosato@linux.vnet.ibm.com> Signed-off-by: David Hildenbrand <david@redhat.com> Message-Id: <20170913132417.24384-18-david@redhat.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
-rw-r--r--hw/s390x/s390-virtio-ccw.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index 99c36a1315..acdd53573c 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -339,6 +339,15 @@ static void s390_machine_device_plug(HotplugHandler *hotplug_dev,
}
}
+static void s390_machine_device_unplug_request(HotplugHandler *hotplug_dev,
+ DeviceState *dev, Error **errp)
+{
+ if (object_dynamic_cast(OBJECT(dev), TYPE_CPU)) {
+ error_setg(errp, "CPU hot unplug not supported on this machine");
+ return;
+ }
+}
+
static HotplugHandler *s390_get_hotplug_handler(MachineState *machine,
DeviceState *dev)
{
@@ -388,6 +397,7 @@ static void ccw_machine_class_init(ObjectClass *oc, void *data)
mc->max_cpus = 248;
mc->get_hotplug_handler = s390_get_hotplug_handler;
hc->plug = s390_machine_device_plug;
+ hc->unplug_request = s390_machine_device_unplug_request;
nc->nmi_monitor_handler = s390_nmi;
}