xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: "Hao, Xudong" <xudong.hao@intel.com>
To: Xen-devel <xen-devel@lists.xenproject.org>
Cc: "Zhang, Haozhong" <haozhong.zhang@intel.com>,
	Wei Liu <wei.liu2@citrix.com>
Subject: live migration from new platform to old platform
Date: Tue, 7 Jun 2016 07:02:38 +0000	[thread overview]
Message-ID: <B8376D2DEA074F45BA033984477C453E034ACC47@shsmsx102.ccr.corp.intel.com> (raw)

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

             reply	other threads:[~2016-06-07  7:02 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-07  7:02 Hao, Xudong [this message]
2016-06-07  7:38 ` live migration from new platform to old platform Jan Beulich
2016-06-07  8:40   ` Hao, Xudong
2016-06-07  9:46 ` Andrew Cooper
2016-06-08  2:08   ` Hao, Xudong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=B8376D2DEA074F45BA033984477C453E034ACC47@shsmsx102.ccr.corp.intel.com \
    --to=xudong.hao@intel.com \
    --cc=haozhong.zhang@intel.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).