From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41140) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b0khC-0005Xz-Cj for qemu-devel@nongnu.org; Thu, 12 May 2016 03:06:10 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b0kh6-00012e-9f for qemu-devel@nongnu.org; Thu, 12 May 2016 03:06:05 -0400 Received: from mx1.redhat.com ([209.132.183.28]:40185) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b0kh6-00012M-0T for qemu-devel@nongnu.org; Thu, 12 May 2016 03:06:00 -0400 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 6AD00627F5 for ; Thu, 12 May 2016 07:05:58 +0000 (UTC) Date: Thu, 12 May 2016 10:05:54 +0300 From: "Michael S. Tsirkin" Message-ID: <20160512100046-mutt-send-email-mst@redhat.com> References: <1462192431-146342-1-git-send-email-imammedo@redhat.com> <1462192431-146342-13-git-send-email-imammedo@redhat.com> <20160510202414.GD4457@thinpad.lan.raisama.net> <20160511155039.320c3de6@nial.brq.redhat.com> <20160511233600.GJ4457@thinpad.lan.raisama.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160511233600.GJ4457@thinpad.lan.raisama.net> Subject: Re: [Qemu-devel] [RFC 12/42] pc: initialize legacy hotplug only for 2.6 and older machine types List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost Cc: Igor Mammedov , qemu-devel@nongnu.org, marcel@redhat.com, eblake@redhat.com, armbru@redhat.com, drjones@redhat.com, libvir-list@redhat.com On Wed, May 11, 2016 at 08:36:00PM -0300, Eduardo Habkost wrote: > On Wed, May 11, 2016 at 03:50:39PM +0200, Igor Mammedov wrote: > > On Tue, 10 May 2016 17:24:14 -0300 > > Eduardo Habkost wrote: > > > > > On Mon, May 02, 2016 at 02:33:21PM +0200, Igor Mammedov wrote: > > > > on old machine types CPU hotplug was uncondtionally > > > > enabled since it was introduced, consuming IO ports > > > > and providing AML regardles of whether it was actually > > > > in use or not. Keep it so for 2.6 and older machines. > > > > > > > > New machine types will have an option to turn CPU > > > > hotplug on if it's needed while by default it stays > > > > disabled not consuming extra RAM/IO resources. > > > > > > > > Signed-off-by: Igor Mammedov > > > > > > What if people are using "-machine pc -smp N,max_cpus=M"? > > > Shouldn't we at least warning about missing CPU hotplug support > > > when using just "max_cpus" with no "cpu-hotplug=on" with pc-2.7 > > > and newer? > > Yep, I'll add it on next respin. > > Would hard error better than warning? > > Not sure. It would break older libvirt versions, wouldn't it? > But: isn't the new legacy-cpu-hotplug=false default going to > break old libvirt versions anyway? Should we? > > (CCing libvirt list) Even if not, we should not break scripts people use. Maybe it was a mistake to enable hotplug by default but we can't just remove it now after all this time. Why not have new hotplug on by default as well? If you see value in ability to remove this feature, add an option for that. > > > > > Should max_cpus > smp_cpus automatically set > > > cpu-hotplug=on? > > I'd prefer dumb explicit feature enablement, > > as it doesn't put any assumptions on other options and > > QEMU + mgmt don't have to maintain logic for implicit > > rules that might enable it. > > > > and if I didn't manage to push 'device_add x86cpu' in 2.7 time frame, > > guess work gets a bit confusing with current cpu-add semantic, > > consider current: > > > > SRC-QEMU -smp 1,maxcpus=2 > > cpu-add 1 > > DST-QEMU -smp 2,maxcpus=2 > > > > vs would be device_add: > > > > SRC-QEMU -smp 1,maxcpus=2 > > device_add cpu > > DST-QEMU -smp 1,maxcpus=2 -device cpu > > > > so instead of qemu/users guessing, I suggest to make it explictly > > enabled to get feature (which is mostly optional) or > > cleanly fail qemu start if confusing options are specified > > with a clear error message. > > Agreed we shouldn't encourage people to use the old option to get > the new behavior. > > But I am worried about breaking existing configurations on a > machine-type change. Is it possible to avoid that? > > -- > Eduardo