diff mbox

[BUG] Rhel7u2 guest with kernel 4.6.0 restore and migrate failed

Message ID 20160613080714.GA25425@citrix.com (mailing list archive)
State New, archived
Headers show

Commit Message

Wei Liu June 13, 2016, 8:07 a.m. UTC
CC Anthony and Stefano

Anthony, I think this is also related to the QEMU mainline migration
failure.

On Mon, Jun 13, 2016 at 05:59:48AM +0000, Zhang, PengtaoX wrote:
> Bug detailed description:
> ----------------
> 1. Rhel7u2 guest with kernel 4.6.0 migrate failed
> 2. Rhel7u2 guest with kernel 4.6.0 restore failed
> 3. Rhel7u2 guest with default kernel (3.10.0) can be restored and migrate successfully
> 
> Environment :
> ----------------
> HW: Skylake-SP
> Xen: Xen 4.7.0 RC4
> Dom0: Linux 4.5.2 stable
> 
> Reproduce steps:
> ----------------
> Prepare test environment 
> 1.Install redhat 6.7 OS on Skylake-SP platform  as base OS , then compile and install  ,xen and Dom0, reboot from xen .
> 2.Create a rhel7.2 guest with kernel 4.6.0 via :
> 	xl create config.rhel7u2-4.6
> 
> Save/Restore test
> 1.After boot up guest with kernel 4.6.0 then :
> 	xl save $dom_id $save_guest.img
> 2.After save guest do
> 	xl restore $save_guest.img
> 3.Current status is guest with kernel 4.6.0 can be save successfully ,but restore guest failed . Guest with default kernel can be save/restore successfully .
> 
> Migrate test 
> 1. After boot up guest with kernel 4.6.0 then :
> 	xl migrate $dom_id localhost 
> 2. Current status is guest with kernel 4.6.0 migrate failed . Guest with default kernel can be migrate successfully .
> 
> Base error log:
> ----------------
> rhel7u2_4.6.0_SR_fail.log file only for Save/Restore test , other log file are for migrate test .
> 
> 
> Regards,
> Pengtao
> 
> 


In the QEMU log file:

  qemu-system-i386: Expected vmdescription section, but got 0

That means should_send_vmdesc() returns true in migration/savevm.c.

It could be that we need to explicitly set supress_vmdesc in machine
description.

Does the following hack make it work?

Wei.

---

> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel

Comments

Wei Liu June 13, 2016, 8:16 a.m. UTC | #1
On Mon, Jun 13, 2016 at 09:07:14AM +0100, Wei Liu wrote:
> CC Anthony and Stefano
> 
> Anthony, I think this is also related to the QEMU mainline migration
> failure.
> 
> On Mon, Jun 13, 2016 at 05:59:48AM +0000, Zhang, PengtaoX wrote:
> > Bug detailed description:
> > ----------------
> > 1. Rhel7u2 guest with kernel 4.6.0 migrate failed
> > 2. Rhel7u2 guest with kernel 4.6.0 restore failed
> > 3. Rhel7u2 guest with default kernel (3.10.0) can be restored and migrate successfully
> > 
> > Environment :
> > ----------------
> > HW: Skylake-SP
> > Xen: Xen 4.7.0 RC4
> > Dom0: Linux 4.5.2 stable
> > 
> > Reproduce steps:
> > ----------------
> > Prepare test environment 
> > 1.Install redhat 6.7 OS on Skylake-SP platform  as base OS , then compile and install  ,xen and Dom0, reboot from xen .
> > 2.Create a rhel7.2 guest with kernel 4.6.0 via :
> > 	xl create config.rhel7u2-4.6
> > 
> > Save/Restore test
> > 1.After boot up guest with kernel 4.6.0 then :
> > 	xl save $dom_id $save_guest.img
> > 2.After save guest do
> > 	xl restore $save_guest.img
> > 3.Current status is guest with kernel 4.6.0 can be save successfully ,but restore guest failed . Guest with default kernel can be save/restore successfully .
> > 
> > Migrate test 
> > 1. After boot up guest with kernel 4.6.0 then :
> > 	xl migrate $dom_id localhost 
> > 2. Current status is guest with kernel 4.6.0 migrate failed . Guest with default kernel can be migrate successfully .
> > 
> > Base error log:
> > ----------------
> > rhel7u2_4.6.0_SR_fail.log file only for Save/Restore test , other log file are for migrate test .
> > 
> > 
> > Regards,
> > Pengtao
> > 
> > 
> 
> 
> In the QEMU log file:
> 
>   qemu-system-i386: Expected vmdescription section, but got 0
> 
> That means should_send_vmdesc() returns true in migration/savevm.c.
> 
> It could be that we need to explicitly set supress_vmdesc in machine
> description.
> 
> Does the following hack make it work?
> 
> Wei.
> 
> ---
> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
> index 631bd8d..8556116 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -469,6 +469,7 @@ static void pc_xen_hvm_init(MachineState *machine)
>      if (bus != NULL) {
>          pci_create_simple(bus, -1, "xen-platform");
>      }
> +    machine->suppress_vmdesc = true;
>  }
>  #endif
> 

Actually I don't think this hack makes much sense. There is no need to
try it...

I will wait for QEMU maintainers to comment on this.

Wei.

> 
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@lists.xen.org
> > http://lists.xen.org/xen-devel
>
Anthony PERARD June 13, 2016, 10:34 a.m. UTC | #2
On Mon, Jun 13, 2016 at 09:07:14AM +0100, Wei Liu wrote:
> CC Anthony and Stefano
> 
> Anthony, I think this is also related to the QEMU mainline migration
> failure.

I don't think it is. The quote does not have anything regarding using
QEMU mainline. Also the migration failure in mainline does not affect
any release.

> On Mon, Jun 13, 2016 at 05:59:48AM +0000, Zhang, PengtaoX wrote:
> > Bug detailed description:
> > ----------------
> > 1. Rhel7u2 guest with kernel 4.6.0 migrate failed
> > 2. Rhel7u2 guest with kernel 4.6.0 restore failed
> > 3. Rhel7u2 guest with default kernel (3.10.0) can be restored and migrate successfully
> > 
> > Environment :
> > ----------------
> > HW: Skylake-SP
> > Xen: Xen 4.7.0 RC4
> > Dom0: Linux 4.5.2 stable
> > 
> > Reproduce steps:
> > ----------------
> > Prepare test environment 
> > 1.Install redhat 6.7 OS on Skylake-SP platform  as base OS , then compile and install  ,xen and Dom0, reboot from xen .
> > 2.Create a rhel7.2 guest with kernel 4.6.0 via :
> > 	xl create config.rhel7u2-4.6
> > 
> > Save/Restore test
> > 1.After boot up guest with kernel 4.6.0 then :
> > 	xl save $dom_id $save_guest.img
> > 2.After save guest do
> > 	xl restore $save_guest.img
> > 3.Current status is guest with kernel 4.6.0 can be save successfully ,but restore guest failed . Guest with default kernel can be save/restore successfully .
> > 
> > Migrate test 
> > 1. After boot up guest with kernel 4.6.0 then :
> > 	xl migrate $dom_id localhost 
> > 2. Current status is guest with kernel 4.6.0 migrate failed . Guest with default kernel can be migrate successfully .
> > 
> > Base error log:
> > ----------------
> > rhel7u2_4.6.0_SR_fail.log file only for Save/Restore test , other log file are for migrate test .
> > 
> > 
> > Regards,
> > Pengtao
> > 
> > 
> 
> 
> In the QEMU log file:
> 
>   qemu-system-i386: Expected vmdescription section, but got 0

I've seen this log message, it does not appear to affect the migration,
as migration usully succeed and this message is always present. I
haven't investigate.

> That means should_send_vmdesc() returns true in migration/savevm.c.
> 
> It could be that we need to explicitly set supress_vmdesc in machine
> description.

That won't work, we should be able to use QEMU with -machine xenfv or
-machine pc,accel=xen.
diff mbox

Patch

diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 631bd8d..8556116 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -469,6 +469,7 @@  static void pc_xen_hvm_init(MachineState *machine)
     if (bus != NULL) {
         pci_create_simple(bus, -1, "xen-platform");
     }
+    machine->suppress_vmdesc = true;
 }
 #endif