qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH for-2.8.1 v2] machine: Convert abstract typename


From: Eduardo Habkost
Subject: Re: [Qemu-devel] [PATCH for-2.8.1 v2] machine: Convert abstract typename on compat_props to subclass names
Date: Wed, 14 Dec 2016 15:31:51 -0200
User-agent: Mutt/1.7.1 (2016-10-04)

On Wed, Dec 14, 2016 at 06:22:33PM +0100, Greg Kurz wrote:
> On Wed, 14 Dec 2016 15:04:27 -0200
> Eduardo Habkost <address@hidden> wrote:
> 
> > On Wed, Dec 14, 2016 at 04:42:14PM +0100, Greg Kurz wrote:
> > > On Mon, 12 Dec 2016 18:49:05 -0200
> > > Eduardo Habkost <address@hidden> wrote:
> > >   
> > > > Original problem description by Greg Kurz:
> > > >   
> > > > > Since commit "9a4c0e220d8a hw/virtio-pci: fix virtio
> > > > > behaviour", passing -device virtio-blk-pci.disable-modern=off
> > > > > has no effect on 2.6 machine types because the internal
> > > > > virtio-pci.disable-modern=on compat property always prevail.    
> > > > 
> > > > The same bug also affects other abstract type names mentioned on
> > > > compat_props by machine-types: apic-common, i386-cpu, pci-device,
> > > > powerpc64-cpu, s390-skeys, spapr-pci-host-bridge, usb-device,
> > > > virtio-pci, x86_64-cpu.
> > > > 
> > > > The right fix for this problem is to make sure compat_props and
> > > > -global options are always applied in the order they are
> > > > registered, instead of reordering them based on the type
> > > > hierarchy. But changing the ordering rules of -global is risky
> > > > and might break existing configurations, so we shouldn't do that
> > > > on a stable branch.
> > > > 
> > > > This is a temporary hack that will work around the bug when
> > > > registering compat_props properties: if we find an abstract class
> > > > on compat_props, register properties for all its non-abstract
> > > > subtypes instead. This will make sure -global won't be overridden
> > > > by compat_props, while keeping the existing ordering rules on
> > > > -global options.
> > > > 
> > > > Note that there's one case that won't be fixed by this hack:
> > > > "-global spapr-pci-vfio-host-bridge.<option>=<value>" won't be
> > > > able to override compat_props, because spapr-pci-host-bridge is
> > > > not an abstract class.
> > > > 
> > > > Signed-off-by: Eduardo Habkost <address@hidden>
> > > > ---  
> > > 
> > > This patch had 3 r-b. Is there any good reason to hold
> > > it up to 2.8.1 ?  
> > 
> > Applying it today would mean delaying the 2.8.0 release, and the
> > bug is not serious enough to justify that.
> > 
> 
> IIUC there will be a v2.8.0-rc4 because we want this patch in 2.8:
> 
> [PATCH v3] virtio-pci: Fix cross-version migration  with older machines
> 
> From IRC:
> 
> <stefanha> mcoquelin: Once Michael Tsirkin has reviewed your patch I'll merge 
> it and tag v2.8.0-rc4 (today or tomorrow?).  The QEMU 2.8 release will be 
> next Tuesday.

Oh, I didn't know that. Thanks for the pointer.

But I'd still like to have more time to test this patch, as it
affects multiple machine-types on multiple targets. I think the
hack is a bit risky to be included in the last minute before the
final release.

-- 
Eduardo



reply via email to

[Prev in Thread] Current Thread [Next in Thread]