Received: from eggs.gnu.org ([2001:4830:134:3::10]:33486) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dn6Rz-0005uJ-Vm for qemu-devel@nongnu.org; Wed, 30 Aug 2017 13:06:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dn6Rw-0002W8-0h for qemu-devel@nongnu.org; Wed, 30 Aug 2017 13:06:47 -0400 Received: from mx1.redhat.com ([209.132.183.28]:57200) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dn6Rv-0002Vu-QS for qemu-devel@nongnu.org; Wed, 30 Aug 2017 13:06:43 -0400 From: David Hildenbrand Date: Wed, 30 Aug 2017 19:05:58 +0200 Message-Id: <20170830170601.15855-9-david@redhat.com> In-Reply-To: <20170830170601.15855-1-david@redhat.com> References: <20170830170601.15855-1-david@redhat.com> Subject: [Qemu-devel] [PATCH v1 08/11] s390x: allow only 1 CPU with TCG List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Richard Henderson , Aurelien Jarno , thuth@redhat.com, cohuck@redhat.com, david@redhat.com, borntraeger@de.ibm.com, Alexander Graf 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 are specified, so we don't raise people's hope. Signed-off-by: David Hildenbrand --- hw/s390x/s390-virtio-ccw.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c index 7754e3eaf9..eff96808c4 100644 --- a/hw/s390x/s390-virtio-ccw.c +++ b/hw/s390x/s390-virtio-ccw.c @@ -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" @@ -56,6 +57,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); + } ms->cpus = g_new0(S390CPU *, max_cpus); -- 2.13.5