[libvirt] [RFC 12/42] pc: initialize legacy hotplug only for 2.6 and older machine types

Eduardo Habkost ehabkost at redhat.com
Thu May 12 10:52:23 UTC 2016


On Thu, May 12, 2016 at 12:29:55PM +0200, Igor Mammedov wrote:
> On Thu, 12 May 2016 10:07:03 +0300
> "Michael S. Tsirkin" <mst at redhat.com> wrote:
> 
> > On Wed, May 11, 2016 at 08:28:59PM -0300, Eduardo Habkost wrote:
> > > On Thu, May 12, 2016 at 12:51:55AM +0300, Michael S. Tsirkin 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 <ehabkost at redhat.com> 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 <imammedo at redhat.com>    
> > > > > > 
> > > > > > 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?  
> > > > 
> > > > Most people don't need cpu hotplug, attempts
> > > > to hotplug fail, should be enough.  
> > > 
> > > People who don't need CPU hotplug shouldn't be using the max_cpus
> > > option.  
> > 
> > I agree.
> > 
> > > I believe we should at least warn people (early, during
> > > initialization) that their configuration don't make sense
> > > anymore.  
> > 
> > I think we should try to keep old command line working
> > if we can.
> this patch won't break old command line for old machine types,
> but for new machine type users would need to fix it
> and be explicit if they want cpu-hotplug.

I don't think we should do that, unless users already had time to
update their scripts and libvirt had time to implement code
supporting the new method.

I believe libvirt (and people's scripts) use maxcpus only when
they want CPU hotplug, so making max_cpus > smp_cpus enable CPU
hotplug implicitly would probably solve the compatibility issue.

If we want to deprecate the use of maxcpus to enable CPU hotplug,
then we can make it print a warning for a few releases, so people
have time to update their code.

-- 
Eduardo




More information about the libvir-list mailing list