From c5b934303cf83fe3dda31e8d3e5778458c8a9eeb Mon Sep 17 00:00:00 2001 From: David Hildenbrand Date: Thu, 28 Sep 2017 15:46:06 +0200 Subject: s390x: raise CPU hotplug irq after really hotplugged Let's move it into the machine, so we trigger the IRQ after setting ms->possible_cpus (which SCLP uses to construct the list of online CPUs). This also fixes a problem reported by Thomas Huth, whereby qemu can be crashed using the none machine qemu-s390x-softmmu -M none -monitor stdio -> device_add qemu-s390-cpu Reviewed-by: Christian Borntraeger Reviewed-by: Richard Henderson Signed-off-by: David Hildenbrand Message-Id: <20170928134609.16985-3-david@redhat.com> Signed-off-by: Cornelia Huck --- hw/s390x/s390-virtio-ccw.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'hw/s390x') diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index 2c689d5..679a1a8 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -307,6 +307,10 @@ static void s390_cpu_plug(HotplugHandler *hotplug_dev, g_assert(!ms->possible_cpus->cpus[cpu->env.core_id].cpu); ms->possible_cpus->cpus[cpu->env.core_id].cpu = OBJECT(dev); + + if (dev->hotplugged) { + raise_irq_cpu_hotplug(); + } } static void s390_machine_reset(void) -- cgit v1.1