From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37892) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dotXo-0004qW-AR for qemu-devel@nongnu.org; Mon, 04 Sep 2017 11:44:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dotXj-0001NF-N6 for qemu-devel@nongnu.org; Mon, 04 Sep 2017 11:44:12 -0400 Received: from mx1.redhat.com ([209.132.183.28]:52608) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dotXj-0001Md-Gn for qemu-devel@nongnu.org; Mon, 04 Sep 2017 11:44:07 -0400 From: David Hildenbrand Date: Mon, 4 Sep 2017 17:43:13 +0200 Message-Id: <20170904154316.4148-17-david@redhat.com> In-Reply-To: <20170904154316.4148-1-david@redhat.com> References: <20170904154316.4148-1-david@redhat.com> Subject: [Qemu-devel] [PATCH v2 16/19] s390x: allow cpu hotplug via device_add List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Richard Henderson , thuth@redhat.com, cohuck@redhat.com, david@redhat.com, borntraeger@de.ibm.com, Alexander Graf , Eduardo Habkost E.g. the following now works: device_add host-s390-cpu,id=cpu1,core-id=1 The system will perform the same checks as when using cpu_add: - If the core_id is already in use - If the next sequential core_id isn't used - If core-id >= max_cpu is specified In addition, mixed CPU models are checked. E.g. if starting with -cpu host and trying to hotplug "qemu-s390-cpu": "Mixed CPU models are not supported on s390x." Signed-off-by: David Hildenbrand --- target/s390x/cpu.c | 1 + 1 file changed, 1 insertion(+) diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c index 105ff13034..be20c2fb0f 100644 --- a/target/s390x/cpu.c +++ b/target/s390x/cpu.c @@ -466,6 +466,7 @@ static void s390_cpu_class_init(ObjectClass *oc, void *data) scc->parent_realize = dc->realize; dc->realize = s390_cpu_realizefn; dc->props = s390x_cpu_properties; + dc->user_creatable = true; scc->parent_reset = cc->reset; #if !defined(CONFIG_USER_ONLY) -- 2.13.5