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

Re: [Xen-devel] [PATCH v2 3/3] xenstat: handle more than 1024 domains



On Mon, Jan 04, 2016 at 03:55:53PM +0100, Juergen Gross wrote:
> get_domain_ids() in libxenstat used by read_attributes_qdisk() is
> limited to 1024 domains. Remove that limit.
> 
> Signed-off-by: Juergen Gross <jgross@xxxxxxxx>

Reviewed-by: Wei Liu <wei.liu2@xxxxxxxxxx>

> ---
>  tools/xenstat/libxenstat/src/xenstat_qmp.c | 67 
> +++++++++++++-----------------
>  1 file changed, 29 insertions(+), 38 deletions(-)
> 
> diff --git a/tools/xenstat/libxenstat/src/xenstat_qmp.c 
> b/tools/xenstat/libxenstat/src/xenstat_qmp.c
> index 5e261af..5104afb 100644
> --- a/tools/xenstat/libxenstat/src/xenstat_qmp.c
> +++ b/tools/xenstat/libxenstat/src/xenstat_qmp.c
> @@ -356,18 +356,6 @@ static int qmp_connect(char *path)
>       return s;
>  }
>  
> -/* Get up to 1024 active domains */
> -static xc_domaininfo_t *get_domain_ids(xc_interface *xc_handle, int 
> *num_doms)
> -{
> -     xc_domaininfo_t *dominfo;
> -
> -     dominfo = calloc(1024, sizeof(xc_domaininfo_t));
> -     if (dominfo == NULL)
> -             return NULL;
> -     *num_doms = xc_domain_getinfolist(xc_handle, 0, 1024, dominfo);
> -     return dominfo;
> -}
> -
>  /* Gather the qdisk statistics by querying QMP
>     Resources: http://wiki.qemu.org/QMP and qmp-commands.hx from the qemu code
>     QMP Syntax for entering command mode. This command must be issued before
> @@ -398,44 +386,47 @@ void read_attributes_qdisk(xenstat_node * node)
>  {
>       char *cmd_mode = "{ \"execute\": \"qmp_capabilities\" }";
>       char *query_blockstats_cmd = "{ \"execute\": \"query-blockstats\" }";
> -     xc_domaininfo_t *dominfo = NULL;
> +     xc_domaininfo_t dominfo[1024];
>       unsigned char *qmp_stats, *val;
>       char path[80];
>       int i, qfd, num_doms;
> +     domid_t next_domid = 0;
>  
> -     dominfo = get_domain_ids(node->handle->xc_handle, &num_doms);
> -     if (dominfo == NULL)
> -             return;
> +     for (;;) {
> +             num_doms = xc_domain_getinfolist(node->handle->xc_handle, 
> next_domid, 1024, dominfo);

Some lines have exceeded 80 columns. Not really your fault so no need to
resend.

Wei.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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