Commit b5684cd8 authored by David Hildenbrand's avatar David Hildenbrand Committed by Cornelia Huck
Browse files

s390x: allow only 1 CPU with TCG



Specifying more than 1 CPU (e.g. -smp 5) leads to SIGP errors (the
guest tries to bring these CPUs up but fails), because we don't support
multiple CPUs on s390x under TCG.

Let's bail out if more than 1 is specified, so we don't raise people's
hope.

Tested-by: default avatarMatthew Rosato <mjrosato@linux.vnet.ibm.com>
Signed-off-by: default avatarDavid Hildenbrand <david@redhat.com>
Message-Id: <20170913132417.24384-12-david@redhat.com>
Reviewed-by: default avatarIgor Mammedov <imammedo@redhat.com>
Signed-off-by: default avatarCornelia Huck <cohuck@redhat.com>
parent e0b1a8a1
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@
#include "hw/s390x/css.h"
#include "virtio-ccw.h"
#include "qemu/config-file.h"
#include "qemu/error-report.h"
#include "s390-pci-bus.h"
#include "hw/s390x/storage-keys.h"
#include "hw/s390x/storage-attributes.h"
@@ -55,6 +56,11 @@ static void s390_init_cpus(MachineState *machine)
    if (machine->cpu_model == NULL) {
        machine->cpu_model = s390_default_cpu_model_name();
    }
    if (tcg_enabled() && max_cpus > 1) {
        error_report("Number of SMP CPUs requested (%d) exceeds max CPUs "
                     "supported by TCG (1) on s390x", max_cpus);
        exit(1);
    }

    cpu_states = g_new0(S390CPU *, max_cpus);