[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] [PATCH] Add DOM0_GETDOMAININFOLIST op for bulkretrieval of domain info


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: Josh Triplett <josht@xxxxxxxxxx>
  • Date: Mon, 27 Jun 2005 11:33:55 -0700
  • Delivery-date: Mon, 27 Jun 2005 18:33:03 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

On Sat, 2005-06-25 at 02:41 +0100, Ian Pratt wrote:
> > The attached patch adds a new dom0_op, 
> > DOM0_GETDOMAININFOLIST.  This operation allows retrieval of 
> > the domain info structures for all domains in one hypercall.
> > 
> > Using a small test program, on a system with 97 domains with 
> > non-contiguous domain IDs, I found that with this hypercall I 
> > could retrieve the full array of info structures 12840 times 
> > per second, an improvement from 2380 times per second with 
> > the DOM0_GETDOMAININFO op.
> 
> Can't you just reuse the existing xc_getdomain_info function and change
> the hypercall depending on the number of domains being requested?

xc_domain_getinfo?  Ideally yes.  However, xc_domain_getinfo performs a
translation from the xc_domaininfo_t structure (a typedef of
dom0_getdomaininfo_t) returned by DOM0_GETDOMAININFO to the array of
xc_dominfo_t structures passed by the caller.  So in order to use the
bulk call from xc_domain_getinfo, it would need to allocate its own
array of xc_domaininfo_t structures, make the hypercall, and then
perform the translation on the array of structures.  If
xc_domain_getinfo took a caller-provided array of xc_domaininfo_t
structures, I would definitely have just modified it to use the new
hypercall rather than making a new function.

What is the purpose of that translation from one structure to the other?
The only differences seem to be reordered/renamed fields, and splitting
the flags field out into individual bitfields.  If that is the only
purpose, then why not just have xc_domaininfo_t include a union of the
flags field and a structure containing a bitfield?

- Josh Triplett



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.