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

Re: [Xen-devel] live migration from 4.12 to 4.13 fails due to qemu-xen bug


  • To: Olaf Hering <olaf@xxxxxxxxx>, "xen-devel@xxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxx>
  • From: "Durrant, Paul" <pdurrant@xxxxxxxxxxxx>
  • Date: Mon, 27 Jan 2020 11:54:37 +0000
  • Accept-language: en-GB, en-US
  • Delivery-date: Mon, 27 Jan 2020 11:55:02 +0000
  • Ironport-sdr: ER+iloZ0pzLdY6sUxYm14pIUKaE7fl1EB1Uq2GxmAgQbbxQpC/oS5ngKr/cOE8LraNNesb7pv6 NvxiC6qmTeog==
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHVyf11gUSmbB+iq0KEPStCWv0JQaf+dkOAgAADHTA=
  • Thread-topic: [Xen-devel] live migration from 4.12 to 4.13 fails due to qemu-xen bug

> -----Original Message-----
> From: Xen-devel [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxxx] On Behalf
> Of Olaf Hering
> Sent: 27 January 2020 11:30
> To: xen-devel@xxxxxxxxxxxxx
> Subject: Re: [Xen-devel] live migration from 4.12 to 4.13 fails due to
> qemu-xen bug
> 
> Am Mon, 13 Jan 2020 11:36:27 +0100
> schrieb Olaf Hering <olaf@xxxxxxxxx>:
> 
> > This HVM domU fails to live migrate from staging-4.12 to staging-4.13:
> 
> It turned out libxl does not configure qemu correctly at runtime:
> libxl__build_device_model_args_new() uses 'qemu -machine xenfv', perhaps
> with the assumption that 'xenfv' does the right thing. Unfortunately,
> 'xenfv' entirely ignores compatibility of "pc-i440fx" between qemu
> versions, 'xenfv' just maps to 'pc' aka 'the lastest'. Instead of 'qemu -
> machine xenfv', libxl should run 'qemu -machine pc-i440fx-3.0 -device xen-
> platform -accel xen' to make sure the domU can be migrated safely to
> future versions of qemu.

Agreed, I think use xenfv needs to be dropped and xl/libxl ought to specify the 
pc version it wants, as you suggest. For compat though, if the pc version is 
not specified in xl.cfg we'd need a mechanism to scan the versions supported by 
the installed qemu and then pick the latest, such that it then gets baked into 
the json blob for save/restore/migration purposes. 

> 
> Maybe there should also be a way to select a specific variant of "pc-
> i440fx". Currently the only way to do that is to use
> device_model_args_hvm= in xl.cfg. Unfortunately libvirt does not support
> "b_info->extra*".
> 

Yeah, it should be a first class config option.

> Should the string "pc-i440fx-3.0" become a configure option?
> 

I suppose. Could we have "pc-i440fx" as the default, which libxl prefix matches 
against qemu's supported versions to select the latest? I guess that would work.

Functionally your code looks fine, but I don't think fixing on 3.0 is the right 
thing to do. What happens if someone is trying to use an older version of qemu? 
It's going to cause unexpected breakage I think.

  Paul


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.