From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: [PATCH v3 01/23] xen/xsplice: Hypervisor implementation of XEN_XSPLICE_op (v10) Date: Fri, 12 Feb 2016 15:40:34 -0500 Message-ID: <20160212204033.GB20694@char.us.oracle.com> References: <1455300361-13092-1-git-send-email-konrad.wilk@oracle.com> <1455300361-13092-2-git-send-email-konrad.wilk@oracle.com> <56BE3C7D.3030303@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: <56BE3C7D.3030303@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: Wei Liu , Ian Campbell , jinsong.liu@alibaba-inc.com, Stefano Stabellini , Ian Jackson , xen-devel@lists.xen.org, mpohlack@amazon.de, ross.lagerwall@citrix.com, xen-devel@lists.xenproject.org, Daniel De Graaf , sasha.levin@citrix.com List-Id: xen-devel@lists.xenproject.org > > diff --git a/xen/include/public/sysctl.h b/xen/include/public/sysctl.h > > index 96680eb..d549e7a 100644 > > --- a/xen/include/public/sysctl.h > > +++ b/xen/include/public/sysctl.h > > @@ -766,6 +766,160 @@ struct xen_sysctl_tmem_op { > > typedef struct xen_sysctl_tmem_op xen_sysctl_tmem_op_t; > > DEFINE_XEN_GUEST_HANDLE(xen_sysctl_tmem_op_t); > > > > +/* > > + * XEN_SYSCTL_XSPLICE_op > > + * > > + * Refer to the http://xenbits.xenproject.org/docs/unstable/misc/xsplice.html > > I would refer to the file in the source tree, so docs/misc/xsplice.$FOO > which is far less likely to change. The initial patch had exactly that - but Jan asked me to change it to the URL. Shall I include both of them? .. snip.. > > + * Retrieve an array of abbreviated status and names of payloads that are > > + * loaded in the hypervisor. > > + * > > + * If the hypercall returns an positive number, it is the number (up to `nr`) > > + * of the payloads returned, along with `nr` updated with the number of remaining > > + * payloads, `version` updated (it may be the same across hypercalls. If it > > + * varies the data is stale and further calls could fail). The `status`, > > + * `name`, and `len`' are updated at their designed index value (`idx`) with > > + * the returned value of data. > > + * > > + * If the hypercall returns E2BIG the `nr` is too big and should be > > + * lowered. > > What would cause this situation to occur? If the hypervisor decided that the 'nr' is too big. It is hardcoded to an value - but I don't think it makes sense to mention that in the header filer. > > > + * > > + * This operation can be preempted by the hypercall returning EAGAIN. > > + * Retry. > > Again, why is this necessary or useful? Actually it is a lie. I've updated the design document but forgot to remove it here! Thanks for the comments! Let me update the file..