Does anyone experience for HVM live migration from new generation platform to old generation platform? For X86 got a failure from Broadwell to Haswell, both platforms used same Xen version 4.7.0 RC3.
[root@bdw-ep1 feng]# xl migrate 21 hsw-ep1 ... migration target: Ready to receive domain. Saving to migration stream new xl format (info 0x3/0x0/1537) Loading new save file <incoming migration stream> (new xl fmt info 0x3/0x0/1537) Savefile contains xl domain config in JSON format Parsing config from <saved> xc: info: Saving domain 21, type x86 HVM xc: info: Found x86 HVM domain from Xen 4.7 xc: info: Restoring domain xc: error: Unable to restore HVM context (1 = Operation not permitted): Internal error xc: error: Restore failed (1 = Operation not permitted): Internal error libxl: error: libxl_stream_read.c:852:libxl__xc_domain_restore_done: restoring domain: Operation not permitted libxl: error: libxl_create.c:1220:domcreate_rebuild_done: cannot (re-)build domain: -3 libxl: error: libxl.c:1564:libxl__destroy_domid: non-existant domain 31 libxl: error: libxl.c:1523:domain_destroy_callback: unable to destroy guest with domid 31 libxl: error: libxl.c:1452:domain_destroy_cb: destruction of domain 31 failed migration target: Domain creation failed (code -3). libxl: error: libxl_utils.c:507:libxl_read_exactly: file/stream truncated reading ready message from migration receiver stream libxl: info: libxl_exec.c:118:libxl_report_child_exitstatus: migration transport process [20867] exited with error status 1 Migration failed, resuming at sender. Guessing HVM context of some new instruction can't be restored to an old platform. Current Xen xl has cupid parameter parsing implement "cupid" in guest config, like cupid='host,xsave=0' or cpuid=[ '1:ecx=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0' ] So I tried to disable some new cupid in guest config, both of the two below method doesn't work, the HVM guest didn't disable those cupid such as "hle, rtm, rdseed...". cpuid='host,3dnowprefetch=0,hle=0,rtm=0,rdseed=0,adx=0,smap=0' cpuid=['7:ebx=xxxxxxxxxxx000xxxxxx0xxxxxx0xxxx'] From function libxl_cpuid_parse_config() of tools/libxl/libxl_cpuid.c, only some cupid are implemented. Feature lacking issue? Best Regards, Xudong _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel