From: Wen Congyang <wency@cn.fujitsu.com>
To: Ian Jackson <Ian.Jackson@eu.citrix.com>,
Yang Hongyang <hongyang.yang@easystack.cn>
Cc: wei.liu2@citrix.com, Ian Campbell <ian.campbell@citrix.com>,
andrew.cooper3@citrix.com, yunhong.jiang@intel.com,
eddie.dong@intel.com, xen-devel@lists.xen.org,
guijianfeng@cn.fujitsu.com, rshriram@cs.ubc.ca
Subject: Re: [PATCH v4 --for 4.6 COLOPre 11/25] tools/libxc: support to resume uncooperative HVM guests
Date: Tue, 15 Dec 2015 10:05:52 +0800 [thread overview]
Message-ID: <566F7580.8070200@cn.fujitsu.com> (raw)
In-Reply-To: <21927.56152.290098.175946@mariner.uk.xensource.com>
On 07/17/2015 12:27 AM, Ian Jackson wrote:
> Yang Hongyang writes ("Re: [Xen-devel] [PATCH v4 --for 4.6 COLOPre 11/25] tools/libxc: support to resume uncooperative HVM guests"):
>> On 07/16/2015 11:40 PM, Ian Jackson wrote:
>>> what this patch is doing
>>>
>>> That is, what the change in behaviour is. This includes clearly
>>> distinguishing old behaviour, before the patch, from new
>>> behaviour, after the patch. I appreciate that there may be
>>> language problems which are making this more difficult - I think
>>> your native language may not use tenses the way English does. So
>>> we can help you with the language, but we need the old and new
>>> behaviours to be clearly marked in your message.
>>
>> I thought this is being addressed in the commit message, sorry again
>> for my poor English and not make it clear, I would appreciate your
>> help.
>
> Right. Thanks. I hope we can work on this together. I appreciate
> that working in a non-native language is difficult.
>
> OK, at the moment I find the existing proposed commit message unclear
> about before-and-after. I'm not sure I can write it correctly. Can I
> make a suggestion ? How about you send me a copy of it with
> the different parts explicitly marked BEFORE: and AFTER: ?
>
>>> what the constraints on the new functionality will be.
>>>
>>> It appears that you are supporting slow path resume for all HVM
>>> guests. Is that true ? Are there any cases left unhandled ?
>>
>> For the first question, yes. For second, Sorry that I don't catch
>> your question, did you mean in some cases resuming HVM through slow
>> path will be unhandled?
>
> What I mean is: I think that this patch has this overall effect:
>
> BEFORE: HVM resume for slow path does not work
>
> AFTER: HVM resume for slow path does work
>
> But I have questions. I don't know in what way it "does not work".
> What happens instead ?
Sorry for the late reply.
BEFORE: HVM resume for slow path does not work. You will get the following
error message:
"Cannot resume uncooperative HVM guests"
Fast resume: the guest status is not changed, so there is no need to disconnect and
reconnect the backend and frontend pv driver.
Slow path resume: the guest status is changed, so we must disconnect and reconnect
the backend and frontend pv driver. When we reconnect the backend and frontend, it
will take too many time, because xenstore is very slow. That is why it is a slow path.
In which case the slow path doesn't work? If the guest status is changed, but it is
also corrupted. I don't know what will happen in this case. I think resuming PV guest
in such state doesn't work(the behavior is undefined.)
>
> And, another question: is it true that
>
> AFTER: HVM resume for slow path does work in all cases
>
> or
>
> AFTER: HVM resume for slow path works in some cases (specify!)
> but in other cases it (does something else - what?)
>
> Does that make sense of my question ?
In my test, it works. I know I cannot say it does work in all cases.
How to know if it does work in all cases?
List all cases, and do a test for all cases.
But I think it is hard to list all cases...
How to resume domU if its state(memory, device state, cpu's register...) is changed?
Note that, the domU can be resumed.(All states are copied from another guest with the same
config).
Before this patch, we only support pv guest, and do the following thing:
1. rewrite store_mfn and console_mfn
2. reset all secondary CPU states
3. resume domain(do_domctl(xch, ...), cmd is XEN_DOMCTL_resumedomain)
Thanks
Wen Congyang
>
>
> Thanks,
> Ian.
> .
>
next prev parent reply other threads:[~2015-12-15 2:05 UTC|newest]
Thread overview: 101+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-15 7:45 [PATCH v4 --for 4.6 COLOPre 00/25] Prerequisite patches for COLO Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 01/25] tools/libxl: rename libxl__domain_suspend to libxl__domain_save Yang Hongyang
2015-07-15 11:16 ` Ian Campbell
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 02/25] tools/libxl: move domain suspend code into libxl_dom_suspend.c Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 03/25] tools/libxl: move domain resume " Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 04/25] tools/libxl: rename remus checkpoint callbacks Yang Hongyang
2015-07-15 11:17 ` Ian Campbell
2015-07-16 1:43 ` Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 05/25] libxl/remus: introduce libxl__remus_setup Yang Hongyang
2015-07-15 11:26 ` Ian Campbell
2015-07-16 5:32 ` Yang Hongyang
2015-07-16 10:40 ` Ian Campbell
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 06/25] libxl/remus: introduce libxl__remus_teardown Yang Hongyang
2015-07-15 11:59 ` Ian Campbell
2015-07-16 1:43 ` Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 07/25] libxl/remus: init checkpoint_callback in Remus checkpoint callback Yang Hongyang
2015-07-15 12:02 ` Ian Campbell
2015-07-15 12:35 ` Yang Hongyang
2015-07-16 10:32 ` Ian Campbell
2015-07-16 11:00 ` Yang Hongyang
2015-07-16 11:16 ` Ian Campbell
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 08/25] tools/libxl: move remus code into libxl_remus.c Yang Hongyang
2015-07-15 12:05 ` Ian Campbell
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 09/25] tools/libxl: move save/restore code into libxl_dom_save.c Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 10/25] libxl/save: Refactor libxl__domain_suspend_state Yang Hongyang
2015-07-15 12:10 ` Ian Campbell
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 11/25] tools/libxc: support to resume uncooperative HVM guests Yang Hongyang
2015-07-15 12:26 ` Ian Campbell
2015-07-16 5:57 ` Yang Hongyang
2015-07-16 15:40 ` Ian Jackson
2015-07-16 16:15 ` Yang Hongyang
2015-07-16 16:27 ` Ian Jackson
2015-12-15 2:05 ` Wen Congyang [this message]
2016-01-04 16:33 ` Ian Jackson
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 12/25] tools/libxl: introduce enum type libxl_checkpointed_stream Yang Hongyang
2015-07-15 12:34 ` Ian Campbell
2015-07-15 13:58 ` Yang Hongyang
2015-07-16 10:34 ` Ian Campbell
2015-07-16 10:47 ` Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 13/25] migration/save: pass checkpointed_stream from libxl to libxc Yang Hongyang
2015-07-15 12:38 ` Ian Campbell
2015-07-16 6:05 ` Yang Hongyang
2015-07-16 10:47 ` Ian Campbell
2015-07-16 16:13 ` Wei Liu
2015-07-16 16:21 ` Yang Hongyang
2015-07-16 16:39 ` Wei Liu
2015-07-16 16:10 ` Wei Liu
2015-07-16 16:24 ` Yang Hongyang
2015-07-16 16:37 ` Wei Liu
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 14/25] tools/libxl: introduce libxl__domain_restore_device_model to load qemu state Yang Hongyang
2015-07-15 12:45 ` Ian Campbell
2015-07-15 13:42 ` Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 15/25] tools/libxl: check QEMU state before resume dm Yang Hongyang
2015-07-15 12:48 ` Ian Campbell
2015-07-15 12:54 ` Ian Campbell
2015-07-15 13:00 ` Wei Liu
2015-07-15 13:48 ` Ian Campbell
2015-07-15 13:49 ` Ian Campbell
2015-07-16 14:43 ` Wei Liu
2015-07-16 15:43 ` Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 16/25] tools/libxl: Update libxl_domain_unpause() to support qemu-xen Yang Hongyang
2015-07-15 12:50 ` Ian Campbell
2015-07-16 3:49 ` Yang Hongyang
2015-07-16 10:39 ` Ian Campbell
2015-07-16 10:51 ` Yang Hongyang
2015-07-16 16:26 ` Wei Liu
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 17/25] tools/libxl: introduce libxl__domain_common_switch_qemu_logdirty() Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 18/25] tools/libxl: export logdirty_init Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 19/25] tools/libxl: Add back channel to allow migration target send data back Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 20/25] tools/libx{l, c}: add back channel to libxc Yang Hongyang
2015-07-15 13:13 ` Ian Campbell
2015-07-16 6:29 ` Yang Hongyang
2015-07-16 11:01 ` Ian Campbell
2015-07-15 13:21 ` Andrew Cooper
2015-07-16 6:07 ` Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 21/25] tools/libxl: rename remus device to checkpoint device Yang Hongyang
2015-07-15 13:15 ` Ian Campbell
2015-07-15 13:34 ` Yang Hongyang
2015-07-16 9:26 ` Andrew Cooper
2015-07-16 9:29 ` Yang Hongyang
2015-07-15 13:32 ` Ian Campbell
2015-07-15 13:38 ` Yang Hongyang
2015-07-16 9:23 ` Yang Hongyang
2015-07-16 9:31 ` Ian Campbell
2015-07-16 9:36 ` Yang Hongyang
2015-07-16 10:14 ` Ian Campbell
2015-07-16 10:22 ` Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 22/25] tools/libxl: adjust the indentation Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 23/25] tools/libxl: store remus_ops in checkpoint device state Yang Hongyang
2015-07-15 13:21 ` Ian Campbell
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 24/25] tools/libxl: move remus state into a seperate structure Yang Hongyang
2015-07-15 13:28 ` Ian Campbell
2015-07-15 13:50 ` Yang Hongyang
2015-07-16 10:37 ` Ian Campbell
2015-07-16 11:10 ` Ian Jackson
2015-07-16 11:19 ` Ian Campbell
2015-07-15 15:08 ` Ian Jackson
2015-07-15 15:18 ` Yang Hongyang
2015-07-15 7:45 ` [PATCH v4 --for 4.6 COLOPre 25/25] tools/libxl: seperate device init/cleanup from checkpoint device layer Yang Hongyang
2015-07-15 13:37 ` Ian Campbell
2015-07-16 1:37 ` [PATCH v4 --for 4.6 COLOPre 00/25] Prerequisite patches for COLO Yang Hongyang
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=566F7580.8070200@cn.fujitsu.com \
--to=wency@cn.fujitsu.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=andrew.cooper3@citrix.com \
--cc=eddie.dong@intel.com \
--cc=guijianfeng@cn.fujitsu.com \
--cc=hongyang.yang@easystack.cn \
--cc=ian.campbell@citrix.com \
--cc=rshriram@cs.ubc.ca \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xen.org \
--cc=yunhong.jiang@intel.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 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).