From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53036) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zvsg7-0000as-Fk for qemu-devel@nongnu.org; Mon, 09 Nov 2015 15:04:36 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zvsg4-0001uD-9R for qemu-devel@nongnu.org; Mon, 09 Nov 2015 15:04:35 -0500 Received: from e06smtp14.uk.ibm.com ([195.75.94.110]:51855) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zvsg3-0001tv-WC for qemu-devel@nongnu.org; Mon, 09 Nov 2015 15:04:32 -0500 Received: from localhost by e06smtp14.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 9 Nov 2015 20:04:30 -0000 Received: from b06cxnps3075.portsmouth.uk.ibm.com (d06relay10.portsmouth.uk.ibm.com [9.149.109.195]) by d06dlp01.portsmouth.uk.ibm.com (Postfix) with ESMTP id 5786D17D8056 for ; Mon, 9 Nov 2015 20:04:46 +0000 (GMT) Received: from d06av01.portsmouth.uk.ibm.com (d06av01.portsmouth.uk.ibm.com [9.149.37.212]) by b06cxnps3075.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id tA9K4SVi66388042 for ; Mon, 9 Nov 2015 20:04:28 GMT Received: from d06av01.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av01.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id tA9K4RLp031941 for ; Mon, 9 Nov 2015 13:04:28 -0700 References: <1447082260-427-1-git-send-email-mjrosato@linux.vnet.ibm.com> <5640BBAA.1000201@suse.de> <5640BD5B.9050204@de.ibm.com> <5640BDD2.9040102@de.ibm.com> <5640C210.5060804@suse.de> From: Christian Borntraeger Message-ID: <5640FC4B.600@de.ibm.com> Date: Mon, 9 Nov 2015 21:04:27 +0100 MIME-Version: 1.0 In-Reply-To: <5640C210.5060804@suse.de> Content-Type: text/plain; charset=iso-8859-15 Content-Transfer-Encoding: 8bit Subject: Re: [Qemu-devel] [PATCH 0/4] s390: Allow hotplug of s390 CPUs List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?UTF-8?Q?Andreas_F=c3=a4rber?= , qemu-devel@nongnu.org Cc: Matthew Rosato , Eduardo Habkost , agraf@suse.de, Bharata B Rao , cornelia.huck@de.ibm.com, rth@twiddle.net Am 09.11.2015 um 16:56 schrieb Andreas Färber: > Am 09.11.2015 um 16:37 schrieb Christian Borntraeger: >> Am 09.11.2015 um 16:35 schrieb Christian Borntraeger: >>> Am 09.11.2015 um 16:28 schrieb Andreas Färber: >>>> Hi, >>>> >>>> Am 09.11.2015 um 16:17 schrieb Matthew Rosato: >>>>> To subsequently hotplug a CPU: >>>>> >>>>> Issue 'cpu-add ' from qemu monitor, or use virsh setvcpus --count >>>>> , where is the total number of desired guest CPUs. >>>> >>>> What exactly is still missing for you to use the standard device_add? >>>> >>>> Last time I checked (a while ago...) some patches were stuck on the x86 >>>> side, and I don't recall hearing any feedback from the s390x side in my >>>> KVM Forum CPU hotplug session. >>> >>> libvirt uses "cpu-add" unconditionally for hotplugging, so we certainly >>> want to support that. >> >> Sorry, hit send too early. I assume you want us to support device_add of >> a CPU in addition to that. Correct? > > No, I mean as I've always said: cpu-add was a short-term hack to make > CPU hotplug work on x86. libvirt certainly needs to be fixed if it > assumes this to work for s390. > > If device_add works, we don't need cpu-add. If device_add does not work, > we need to know which patches are missing. device_del is a separate > beast and there were also patches around that seemed incomplete > according to Eduardo. Given that s390 plugs CPUs without sockets, it would boild down to an opaque cpu, so - Matt will remove the hot_add function from patch 4 (which makes it smaller) - we provide a followup patch for libvirt - Matt fixes the maxcpus overrun - In addition we would need something like diff --git a/target-s390x/cpu.c b/target-s390x/cpu.c index 266575c..cfcff52 100644 --- a/target-s390x/cpu.c +++ b/target-s390x/cpu.c @@ -377,7 +377,7 @@ static void s390_cpu_class_init(ObjectClass *oc, void *data) scc->parent_realize = dc->realize; dc->realize = s390_cpu_realizefn; - + dc->cannot_instantiate_with_device_add_yet = false; scc->parent_reset = cc->reset; #if !defined(CONFIG_USER_ONLY) scc->load_normal = s390_cpu_load_normal With that device_add s390-cpu seems to work. > Bharata did implement device_add for pseries, I thought. Seems that the patches did not make it into upstream yet. Bharata, is cpu hotplug on pseries still missing? Christian