From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: [PATCH v4 --for 4.6 COLOPre 07/25] libxl/remus: init checkpoint_callback in Remus checkpoint callback Date: Wed, 15 Jul 2015 13:02:22 +0100 Message-ID: <1436961742.32371.21.camel@citrix.com> References: <1436946351-21118-1-git-send-email-yanghy@cn.fujitsu.com> <1436946351-21118-8-git-send-email-yanghy@cn.fujitsu.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1436946351-21118-8-git-send-email-yanghy@cn.fujitsu.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: Yang Hongyang Cc: wei.liu2@citrix.com, wency@cn.fujitsu.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, Ian Jackson List-Id: xen-devel@lists.xenproject.org On Wed, 2015-07-15 at 15:45 +0800, Yang Hongyang wrote: > init stream {read/write} state checkpoint_callback in Remus > checkpoint callback. Why? Is this earlier or later than previously? Seems later? > > Signed-off-by: Yang Hongyang > CC: Andrew Cooper > CC: Ian Campbell > CC: Ian Jackson > CC: Wei Liu > --- > tools/libxl/libxl_create.c | 2 +- > tools/libxl/libxl_dom.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c > index a32e3df..94fe98f 100644 > --- a/tools/libxl/libxl_create.c > +++ b/tools/libxl/libxl_create.c > @@ -684,6 +684,7 @@ static void libxl__remus_domain_restore_checkpoint_callback(void *data) > libxl__egc *egc = shs->egc; > STATE_AO_GC(dcs->ao); > > + dcs->srs.checkpoint_callback = remus_checkpoint_stream_done; > libxl__stream_read_start_checkpoint(egc, &dcs->srs); > } > > @@ -1000,7 +1001,6 @@ static void domcreate_bootloader_done(libxl__egc *egc, > dcs->srs.fd = restore_fd; > dcs->srs.legacy = (dcs->restore_params.stream_version == 1); > dcs->srs.completion_callback = domcreate_stream_done; > - dcs->srs.checkpoint_callback = remus_checkpoint_stream_done; > > libxl__stream_read_start(egc, &dcs->srs); > return; > diff --git a/tools/libxl/libxl_dom.c b/tools/libxl/libxl_dom.c > index 77a917c..1740bed 100644 > --- a/tools/libxl/libxl_dom.c > +++ b/tools/libxl/libxl_dom.c > @@ -1593,6 +1593,7 @@ static void libxl__remus_domain_save_checkpoint_callback(void *data) > libxl__egc *egc = shs->egc; > STATE_AO_GC(dss->ao); > > + dss->sws.checkpoint_callback = remus_checkpoint_stream_written; > libxl__stream_write_start_checkpoint(egc, &dss->sws); > } > > @@ -1750,7 +1751,6 @@ void libxl__domain_save(libxl__egc *egc, libxl__domain_suspend_state *dss) > callbacks->suspend = libxl__remus_domain_suspend_callback; > callbacks->postcopy = libxl__remus_domain_resume_callback; > callbacks->checkpoint = libxl__remus_domain_save_checkpoint_callback; > - dss->sws.checkpoint_callback = remus_checkpoint_stream_written; > } else > callbacks->suspend = libxl__domain_suspend_callback; >