From: Andreas Olsowski <andreas.olsowski@leuphana.de>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: pv guests die after failed migration
Date: Fri, 23 Sep 2011 11:15:48 +0200 [thread overview]
Message-ID: <4E7C4E44.70508@leuphana.de> (raw)
In-Reply-To: <1316764045.23371.100.camel@zakaz.uk.xensource.com>
On 09/23/2011 09:47 AM, Ian Campbell wrote:
> This seems to be taking the non-cancelled resume path, does this patch
> help at all:
>
> diff -r d7b14b76f1eb tools/libxl/libxl.c
> --- a/tools/libxl/libxl.c Thu Sep 22 14:26:08 2011 +0100
> +++ b/tools/libxl/libxl.c Fri Sep 23 08:45:28 2011 +0100
> @@ -246,7 +246,7 @@ int libxl_domain_resume(libxl_ctx *ctx,
> rc = ERROR_NI;
> goto out;
> }
> - if (xc_domain_resume(ctx->xch, domid, 0)) {
> + if (xc_domain_resume(ctx->xch, domid, 1)) {
> LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR,
> "xc_domain_resume failed for domain %u",
> domid);
>
> I don't think that's a solution but if this patch works then it may
> indicate a problem with xc_domain_resume_any.
>
For the curent xen-4.1-testing.hg the patch had to be modified to a
different position:
--- a/tools/libxl/libxl.c Thu Sep 22 14:26:08 2011 +0100
+++ b/tools/libxl/libxl.c Fri Sep 23 08:45:28 2011 +0100
@@ -229,7 +229,7 @@
rc = ERROR_NI;
goto out;
}
- if (xc_domain_resume(ctx->xch, domid, 0)) {
+ if (xc_domain_resume(ctx->xch, domid, 1)) {
LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR,
"xc_domain_resume failed for domain %u",
domid);
I did a clean/make/install after that, compilation worked fine.
I then tested the migration towards an unsuitable target again and it
did what you thought it could do. The guest resumes correctly at sender
###############
root@xenturio1:~# xl -vvv migrate thishopefullywontfail xenturio2
Saving to migration stream new xl format (info 0x0/0x0/407)
migration target: Ready to receive domain.
Loading new save file incoming migration stream (new xl fmt info
0x0/0x0/407)
Savefile contains xl domain config
xc: detail: Had 0 unexplained entries in p2m table
xc: Saving memory: iter 0 (last sent 0 skipped 0): 133120/133120 100%
xc: detail: delta 9529ms, dom0 93%, target 1%, sent 449Mb/s, dirtied
1Mb/s 502 pages
xc: Saving memory: iter 1 (last sent 130592 skipped 480): 133120/133120
100%
xc: detail: delta 37ms, dom0 91%, target 2%, sent 444Mb/s, dirtied
30Mb/s 34 pages
xc: Saving memory: iter 2 (last sent 502 skipped 0): 133120/133120 100%
xc: detail: Start last iteration
libxl: debug: libxl_dom.c:384:libxl__domain_suspend_common_callback
issuing PV suspend request via XenBus control node
libxl: debug: libxl_dom.c:389:libxl__domain_suspend_common_callback wait
for the guest to acknowledge suspend request
libxl: debug: libxl_dom.c:434:libxl__domain_suspend_common_callback
guest acknowledged suspend request
libxl: debug: libxl_dom.c:438:libxl__domain_suspend_common_callback wait
for the guest to suspend
libxl: debug: libxl_dom.c:450:libxl__domain_suspend_common_callback
guest has suspended
xc: detail: SUSPEND shinfo 0007fafc
xc: detail: delta 204ms, dom0 3%, target 0%, sent 4Mb/s, dirtied 25Mb/s
156 pages
xc: Saving memory: iter 3 (last sent 30 skipped 4): 133120/133120 100%
xc: detail: delta 3ms, dom0 0%, target 0%, sent 1703Mb/s, dirtied
1703Mb/s 156 pages
xc: detail: Total pages sent= 131280 (0.99x)
xc: detail: (of which 0 were fixups)
xc: detail: All memory is saved
xc: detail: Save exit rc=0
libxl: error: libxl.c:900:validate_virtual_disk failed to stat
/dev/xen-data/thishopefullywontfail-root: No such file or directory
cannot add disk 0 to domain: -6
migration target: Domain creation failed (code -3).
libxl: error: libxl_utils.c:408:libxl_read_exactly file/stream truncated
reading ready message from migration receiver stream
libxl: info: libxl_exec.c:72:libxl_report_child_exitstatus migration
target process [16608] exited with error status 3
Migration failed, resuming at sender.
root@xenturio1:~# xl console thishopefullywontfail
PM: freeze of devices complete after 0.197 msecs
PM: late freeze of devices complete after 0.067 msecs
PM: early thaw of devices complete after 0.074 msecs
PM: thaw of devices complete after 0.077 msecs
root@thishopefullywontfail:~#
#####################
So that works
There is no mention of the migration failing in the guest log though,
maybe when a final patch is made it should log that failing migration?
with best regards
andreas
next prev parent reply other threads:[~2011-09-23 9:15 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-20 9:42 pv guests die after failed migration Andreas Olsowski
2011-09-20 19:27 ` Ian Campbell
2011-09-23 7:39 ` Andreas Olsowski
2011-09-23 7:47 ` Ian Campbell
2011-09-23 9:15 ` Andreas Olsowski [this message]
2011-09-28 15:52 ` Ian Campbell
2011-10-15 1:18 ` Andreas Olsowski
2011-10-15 5:44 ` Ian Campbell
2011-10-15 10:35 ` Andreas Olsowski
2011-10-15 15:12 ` Ian Campbell
2011-12-29 14:08 ` Andreas Olsowski
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=4E7C4E44.70508@leuphana.de \
--to=andreas.olsowski@leuphana.de \
--cc=Ian.Campbell@citrix.com \
--cc=xen-devel@lists.xensource.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.