[libvirt] [Qemu-devel] [RFC 12/42] pc: initialize legacy hotplug only for 2.6 and older machine types
Igor Mammedov
imammedo at redhat.com
Thu May 12 14:30:10 UTC 2016
On Thu, 12 May 2016 15:27:04 +0200
Peter Krempa <pkrempa at redhat.com> wrote:
> On Thu, May 12, 2016 at 15:20:51 +0200, Igor Mammedov wrote:
> > On Thu, 12 May 2016 13:04:23 +0200
> > Peter Krempa <pkrempa at redhat.com> wrote:
> >
> > > On Thu, May 12, 2016 at 07:52:23 -0300, Eduardo Habkost wrote:
> > > > 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.
> > >
> > > Libvirt uses maxcpus only if the configuration explicitly has less
> > > active cpus than the maximum number. This option would be the best IMO.
> > >
> > > > 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.
> > >
> > > At that point libvirt also needs a way to detect that the new argument
> > > is supported by qemu, so we can start passing it on the command line
> > > basically every time we now pass 'maxcpus'.
> > >
> > > The warning will get most probably ignored by people using libvirt as
> > > the stdout/err of qemu is not visible to them.
> > Ok, to make things less complicated I'll drop machine.cpu-hotplug
> > and leave it always enabled as it used to be and as Michael suggested.
> >
> > I'll drop following patches: 12, 13, 14, 20, 23 and respin series
>
> I actually don't mind disabling it. But I'd be glad if it was based on
> the max_cpus value as Eduardo suggested.
I've already dropped it, and simplifies series quite a bit.
So lets continue without disabling for now.
Later we can consider disabling it if we agree on conditions when it should happen.
smp_cpus < max_cpus is not a good enough I think:
> On Wed, 11 May 2016 15:50:39 +0200
> Igor Mammedov <imammedo at redhat.com> wrote:
>
> > On Tue, 10 May 2016 17:24:14 -0300
> > Eduardo Habkost <ehabkost at redhat.com> wrote:
> [...]
> > > 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.
More information about the libvir-list
mailing list