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

Re: [Xen-devel] [PATCH v10 6/6] tools: enable Cache QoS Monitoring feature for libxl/libxc



On Wed, 2014-03-26 at 14:35 +0800, Dongxiao Xu wrote:
[...]
> +int libxl_pqos_attach(libxl_ctx *ctx, uint32_t domid, libxl_pqos_type 
> qos_type);
> +int libxl_pqos_detach(libxl_ctx *ctx, uint32_t domid, libxl_pqos_type 
> qos_type);
> +libxl_cqminfo * libxl_getcqminfo(libxl_ctx *ctx, unsigned int *l3c_total,
> +    unsigned int *nr_domains, unsigned int *nr_rmids, unsigned int 
> *nr_sockets);
[...]
> +libxl_cqminfo = Struct("cqminfo", [
> +    ("valid",         uint32),
> +    ("l3c",           uint64),
> +    ])

libxl_getcqminfo seems to have a strange mixture of returning an info
struct and returning things via pointers passed as integers. why is
that?

> diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
> index 8389468..664a34d 100644
> --- a/tools/libxl/xl_cmdimpl.c
> +++ b/tools/libxl/xl_cmdimpl.c
> @@ -7381,6 +7381,115 @@ out:
>      return ret;
>  }
>  
> +int main_pqosattach(int argc, char **argv)
> +{
> +    uint32_t domid;
> +    int opt, rc;
> +    libxl_pqos_type qos_type;
> +
> +    SWITCH_FOREACH_OPT(opt, "", NULL, "pqos-attach", 2) {
> +        /* No options */
> +    }
> +
> +    /* libxl_pqos_attach will handle the parameter check. */
> +    libxl_pqos_type_from_string(argv[optind], &qos_type);

This can fail, I think you need to check the return value.

> +    domid = find_domain(argv[optind + 1]);
> +
> +    rc = libxl_pqos_attach(ctx, domid, qos_type);
> +
> +    return rc;
> +}
> +
> +int main_pqosdetach(int argc, char **argv)
> +{
> +    uint32_t domid;
> +    int opt, rc;
> +    libxl_pqos_type qos_type;
> +
> +    SWITCH_FOREACH_OPT(opt, "", NULL, "pqos-detach", 2) {
> +        /* No options */
> +    }
> +
> +    /* libxl_pqos_detach will handle the parameter check. */
> +    libxl_pqos_type_from_string(argv[optind], &qos_type);

Same again.

Ian.



_______________________________________________
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®.