From: Yang Hongyang <yanghy@cn.fujitsu.com>
To: Andrew Cooper <andrew.cooper3@citrix.com>,
Xen-devel <xen-devel@lists.xen.org>
Cc: Wei Liu <wei.liu2@citrix.com>,
Ian Jackson <Ian.Jackson@eu.citrix.com>,
David Vrabel <david.vrabel@citrix.com>,
Ian Campbell <Ian.Campbell@citrix.com>
Subject: Re: [PATCH v3 3/6] libxc/migration: Specification update for CHECKPOINT records
Date: Tue, 12 May 2015 17:44:02 +0800 [thread overview]
Message-ID: <5551CB62.2090106@cn.fujitsu.com> (raw)
In-Reply-To: <1431423351-27424-4-git-send-email-andrew.cooper3@citrix.com>
On 05/12/2015 05:35 PM, Andrew Cooper wrote:
> Checkpointed streams need to signal the end of a consistent view of VM state,
> and the start of the libxl data.
Ah, now I know what's CHECKPOINT record mean, the name is OK for me then.
>
> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
> CC: David Vrabel <david.vrabel@citrix.com>
> CC: Ian Campbell <Ian.Campbell@citrix.com>
> CC: Ian Jackson <Ian.Jackson@eu.citrix.com>
> CC: Wei Liu <wei.liu2@citrix.com>
> CC: Yang Hongyang <yanghy@cn.fujitsu.com>
>
> ---
>
> After discusions with David, we have come to the conclusion that a CHECKPOINT
> record alone is sufficient for the remus case. There is no functional need to
> explicitly identify the stream as being of arbitrary length.
> ---
> docs/specs/libxc-migration-stream.pandoc | 23 ++++++++++++++++++++---
> tools/libxc/xc_sr_common.c | 1 +
> tools/libxc/xc_sr_stream_format.h | 1 +
> 3 files changed, 22 insertions(+), 3 deletions(-)
>
> diff --git a/docs/specs/libxc-migration-stream.pandoc b/docs/specs/libxc-migration-stream.pandoc
> index 520240f..97edd7d 100644
> --- a/docs/specs/libxc-migration-stream.pandoc
> +++ b/docs/specs/libxc-migration-stream.pandoc
> @@ -37,8 +37,6 @@ Not Yet Included
> The following features are not yet fully specified and will be
> included in a future draft.
>
> -* Remus
> -
> * Page data compression.
>
> * ARM
> @@ -227,7 +225,9 @@ type 0x00000000: END
>
> 0x0000000D: VERIFY
>
> - 0x0000000E - 0x7FFFFFFF: Reserved for future _mandatory_
> + 0x0000000E: CHECKPOINT
> +
> + 0x0000000F - 0x7FFFFFFF: Reserved for future _mandatory_
> records.
>
> 0x80000000 - 0xFFFFFFFF: Reserved for future _optional_
> @@ -578,6 +578,23 @@ The verify record contains no fields; its body_length is 0.
>
> \clearpage
>
> +CHECKPOINT
> +----------
> +
> +A checkpoint record indicates that the records thusfar in the stream represent
> +a consistent view of VM state.
> +
> + 0 1 2 3 4 5 6 7 octet
> + +-------------------------------------------------+
> +
> +The checkpoint record contains no fields; its body_length is 0
> +
> +A stream containing checkpoint records must have indicated itself as a
> +checkpointed stream in the Image Header. Conversely, a stream not identified
> +as checkpointed must not contain checkpoint records.
> +
> +\clearpage
> +
> Layout
> ======
>
> diff --git a/tools/libxc/xc_sr_common.c b/tools/libxc/xc_sr_common.c
> index 59e0c5d..945cfa6 100644
> --- a/tools/libxc/xc_sr_common.c
> +++ b/tools/libxc/xc_sr_common.c
> @@ -34,6 +34,7 @@ const char *dhdr_type_to_str(uint32_t type)
> [REC_TYPE_TOOLSTACK] = "Toolstack",
> [REC_TYPE_X86_PV_VCPU_MSRS] = "x86 PV vcpu msrs",
> [REC_TYPE_VERIFY] = "Verify",
> + [REC_TYPE_CHECKPOINT] = "Checkpoint",
> };
>
> const char *rec_type_to_str(uint32_t type)
> diff --git a/tools/libxc/xc_sr_stream_format.h b/tools/libxc/xc_sr_stream_format.h
> index d116ca6..6d0f8fd 100644
> --- a/tools/libxc/xc_sr_stream_format.h
> +++ b/tools/libxc/xc_sr_stream_format.h
> @@ -74,6 +74,7 @@ struct xc_sr_rhdr
> #define REC_TYPE_TOOLSTACK 0x0000000bU
> #define REC_TYPE_X86_PV_VCPU_MSRS 0x0000000cU
> #define REC_TYPE_VERIFY 0x0000000dU
> +#define REC_TYPE_CHECKPOINT 0x0000000eU
>
> #define REC_TYPE_OPTIONAL 0x80000000U
>
>
--
Thanks,
Yang.
next prev parent reply other threads:[~2015-05-12 9:44 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-12 9:35 [PATCH v3 0/6] Misc patches to aid migration v2 Remus support Andrew Cooper
2015-05-12 9:35 ` [PATCH v3 1/6] libxc/migration: Be rather stricter with illformed callers Andrew Cooper
2015-05-12 9:35 ` [PATCH v3 2/6] libxc/save: Adjust stream-position callbacks for checkpointed streams Andrew Cooper
2015-05-13 10:09 ` George Dunlap
2015-05-13 10:23 ` Andrew Cooper
2015-05-13 10:33 ` George Dunlap
2015-05-12 9:35 ` [PATCH v3 3/6] libxc/migration: Specification update for CHECKPOINT records Andrew Cooper
2015-05-12 9:44 ` Yang Hongyang [this message]
2015-05-12 9:54 ` David Vrabel
2015-05-12 10:49 ` Yang Hongyang
2015-05-12 10:53 ` Andrew Cooper
2015-05-12 9:35 ` [PATCH v3 4/6] tools/libxc: introduce process_record() Andrew Cooper
2015-05-12 9:35 ` [PATCH v3 5/6] libxc/migration: Pass checkpoint information into the save algorithm Andrew Cooper
2015-05-12 9:35 ` [PATCH v3 6/6] [RFC] [INCOMPLETE] libxc/restore: Remus Andrew Cooper
2015-05-12 9:56 ` 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=5551CB62.2090106@cn.fujitsu.com \
--to=yanghy@cn.fujitsu.com \
--cc=Ian.Campbell@citrix.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=andrew.cooper3@citrix.com \
--cc=david.vrabel@citrix.com \
--cc=wei.liu2@citrix.com \
--cc=xen-devel@lists.xen.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 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.