From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH v9 02/25] docs/libxl: Introduce COLO_CONTEXT to support migration v2 colo streams Date: Wed, 27 Jan 2016 10:28:01 -0500 Message-ID: <20160127152801.GG552@char.us.oracle.com> References: <1451443075-27428-1-git-send-email-wency@cn.fujitsu.com> <1451443075-27428-3-git-send-email-wency@cn.fujitsu.com> <20160126204004.GA27940@char.us.oracle.com> <56A8680C.9010407@cn.fujitsu.com> <56A8A348.8010105@citrix.com> <20160127151157.GE552@char.us.oracle.com> <56A8DF23.6060007@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <56A8DF23.6060007@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Andrew Cooper Cc: Lars Kurth , Changlong Xie , Wei Liu , Ian Campbell , Wen Congyang , Gui Jianfeng , Jiang Yunhong , Ian Jackson , xen devel , Dong Eddie , Shriram Rajagopalan , Yang Hongyang List-Id: xen-devel@lists.xenproject.org On Wed, Jan 27, 2016 at 03:15:47PM +0000, Andrew Cooper wrote: > On 27/01/16 15:11, Konrad Rzeszutek Wilk wrote: > > On Wed, Jan 27, 2016 at 11:00:24AM +0000, Andrew Cooper wrote: > >> On 27/01/16 06:47, Wen Congyang wrote: > >>> On 01/27/2016 04:40 AM, Konrad Rzeszutek Wilk wrote: > >>>> On Wed, Dec 30, 2015 at 10:37:32AM +0800, Wen Congyang wrote: > >>>>> It is the negotiation record for COLO. > >>>>> Primary->Secondary: > >>>>> control_id 0x00000000: Secondary VM is out of sync, start a new checkpoint > >>>>> Secondary->Primary: > >>>>> 0x00000001: Secondary VM is suspended > >>>>> 0x00000002: Secondary VM is ready > >>>>> 0x00000003: Secondary VM is resumed > >>>>> > >>>>> Signed-off-by: Wen Congyang > >>>>> Signed-off-by: Yang Hongyang > >>>>> --- > >>>>> docs/specs/libxl-migration-stream.pandoc | 25 +++++++++++++++++++++++-- > >>>>> tools/libxl/libxl_sr_stream_format.h | 11 +++++++++++ > >>>>> tools/python/xen/migration/libxl.py | 9 +++++++++ > >>>>> 3 files changed, 43 insertions(+), 2 deletions(-) > >>>>> > >>>>> diff --git a/docs/specs/libxl-migration-stream.pandoc b/docs/specs/libxl-migration-stream.pandoc > >>>>> index 2c97d86..5166d66 100644 > >>>>> --- a/docs/specs/libxl-migration-stream.pandoc > >>>>> +++ b/docs/specs/libxl-migration-stream.pandoc > >>>>> @@ -1,6 +1,6 @@ > >>>>> % LibXenLight Domain Image Format > >>>>> % Andrew Cooper <> > >>>>> -% Revision 1 > >>>>> +% Revision 2 > >>>>> > >>>>> Introduction > >>>>> ============ > >>>>> @@ -119,7 +119,9 @@ type 0x00000000: END > >>>>> > >>>>> 0x00000004: CHECKPOINT_END > >>>>> > >>>>> - 0x00000005 - 0x7FFFFFFF: Reserved for future _mandatory_ > >>>>> + 0x00000005: CHECKPOINT_STATE > >>>>> + > >>>>> + 0x00000006 - 0x7FFFFFFF: Reserved for future _mandatory_ > >>>> This is in the 'mandatory' records. Should it be part of optional records? > >>>> > >>>> Would this checkpoint state always present on non-COLO guest migration? > >>> No. Will be fixed in the next version > >> It is correct that CHECKPOINT_STATE is a mandatory record. > >> > >> Optional records which are free for the receiving end to ignore if they > >> are not understood. > > What you are saying is that the receving end has to expect this (CHECKPOINT_STATE) > > even there is nothing in them - as the size of them is zero (becuase there are > > no dirty PFNs to send). > > The sole difference between a mandatory record an an option record is > the receivers behaviour. > > Mandatory records may not be ignored, and constitutes a hard error. > Optional records may be ignored, without error, if they are not understood. You are still not answering my question. Is it a hard error if the mandatory record is zero length? > > ~Andrew