On Thu, 15 Dec 2016 07:38:09 +0000 Stefan Hajnoczi <stefa...@gmail.com> wrote:
> On Wed, Dec 14, 2016 at 05:30:35PM +0100, Maxime Coquelin wrote: > > This patch fixes a cross-version migration regression introduced > > by commit d1b4259f ("virtio-bus: Plug devices after features are > > negotiated"). > > > > The problem is encountered when host's vhost backend does not support > > VIRTIO_F_VERSION_1, and migration is initiated from a v2.7 or prior > > machine with virtio-pci modern capabilities enabled to a v2.8 machine. > > > > In this case, modern capabilities get exposed to the guest by the source, > > whereas the target will detect version 1 is not supported so will only > > expose legacy capabilities. > > > > The problem is fixed by introducing a new "x-ignore-backend-features" > > property, which is set in v2.7 and prior compatibility modes. Doing this, > > v2.7 machine keeps its broken behaviour (enabling modern while version > > is not supported), and newer machines will behave correctly. > > > > Reported-by: Michael Roth <mdr...@linux.vnet.ibm.com> > > Suggested-by: Stefan Hajnoczi <stefa...@redhat.com> > > Cc: Michael S. Tsirkin <m...@redhat.com> > > Cc: Cornelia Huck <cornelia.h...@de.ibm.com> > > Cc: Dr. David Alan Gilbert <dgilb...@redhat.com> > > Reviewed-by: Marcel Apfelbaum <mar...@redhat.com> > > Reviewed-by: Stefan Hajnoczi <stefa...@redhat.com> > > Tested-by: Michael Roth <mdr...@linux.vnet.ibm.com> > > Signed-off-by: Maxime Coquelin <maxime.coque...@redhat.com> > > --- > > > > V3 fixes commit message with the new property name. > > V2 changes the naming as proposed by Michael T.and Cornelia, and > > fixes commit message. > > > > hw/virtio/virtio-pci.c | 5 ++++- > > hw/virtio/virtio-pci.h | 1 + > > include/hw/compat.h | 4 ++++ > > 3 files changed, 9 insertions(+), 1 deletion(-) > > Thanks, applied to my staging tree: > https://github.com/stefanha/qemu/commits/staging > > Stefan Hm, missing my R-b I gave for v2... feel free to add Reviewed-by: Cornelia Huck <cornelia.h...@de.ibm.com> if you still want to change it.