From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dario Faggioli Subject: Re: [PATCH] libxc: Document xc_domain_resume Date: Wed, 30 Mar 2016 18:17:47 +0200 Message-ID: <1459354667.5082.98.camel@citrix.com> References: <1459350623-29548-1-git-send-email-konrad.wilk@oracle.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4570676336671792501==" Return-path: Received: from mail6.bemta6.messagelabs.com ([85.158.143.247]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1alIz6-0003jD-8G for xen-devel@lists.xenproject.org; Wed, 30 Mar 2016 16:28:44 +0000 In-Reply-To: <1459350623-29548-1-git-send-email-konrad.wilk@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Konrad Rzeszutek Wilk , xen-devel@lists.xenproject.org, wei.liu2@citrix.com Cc: ian.jackson@eu.citrix.com, jbeulich@suse.com, wency@cn.fujitsu.com, hongyang.yang@easystack.cn List-Id: xen-devel@lists.xenproject.org --===============4570676336671792501== Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="=-IFVwZpEo+4OcTcjnKzxc" --=-IFVwZpEo+4OcTcjnKzxc Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, 2016-03-30 at 11:10 -0400, Konrad Rzeszutek Wilk wrote: >=C2=A0 > --- a/tools/libxc/include/xenctrl.h > +++ b/tools/libxc/include/xenctrl.h > @@ -565,6 +565,58 @@ int xc_domain_destroy(xc_interface *xch, >=C2=A0 > + * HVM guest are the simplest - they suspend via S3 and resume from > + * S3. Upon resume they have to re-negotiate with the emulated > devices. > + * > + * PV and PVHVM communicate via via hypercalls for suspend (and=20 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0^repeated "via" > resume). > + * For suspend the toolstack initiaties the process by writting an > value in > + * XenBus "control/shutdown" with the string "suspend". > + * > + * The PV guest stashes anything it deems neccessary in 'struct > start_info' > + * in case of failure (PVHVM may ignore this) and calls the > + * SCHEDOP_shutdown::SHUTDOWN_suspend=C2=A0=C2=A0hypercall (for PV as ar= gument > it > + * passes the MFN to 'struct start_info'). > + * > + * And then the guest is suspended. > + * > + * At this point the guest may be resumed on the same host under the > same > + * domain (checkpointing or suspending failed), or on a different > host. > I think there's also the case of "same host, different domain", as it happens in local migrations, but maybe it's not that important to mention it here. > + * If the resume was not checkpointing (or if suspend was succesful) > we would > + * setup the PV timers and the different PV events. Lastly the PV > drivers > + * re-negotiate with the backend. =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 ^backends ? Regards, Dario --=20 <> (Raistlin Majere) ----------------------------------------------------------------- Dario Faggioli, Ph.D, http://about.me/dario.faggioli Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK) --=-IFVwZpEo+4OcTcjnKzxc Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEABECAAYFAlb7/CsACgkQk4XaBE3IOsSOSgCeJ7YIEBN+dGTWI4JaZJLXG/53 KQQAn0bcrWdmq//7b4bKwIeXuUrbOV/c =t+Uc -----END PGP SIGNATURE----- --=-IFVwZpEo+4OcTcjnKzxc-- --===============4570676336671792501== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9y Zy94ZW4tZGV2ZWwK --===============4570676336671792501==--