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

Re: [Xen-devel] [PATCH v2 4/4] libxl: Add interface for querying hypervisor about PCI topology



On Mon, 2015-01-05 at 21:18 -0500, Boris Ostrovsky wrote:

>  tools/libxl/libxl_freebsd.c   |   12 +++++++
>  tools/libxl/libxl_netbsd.c    |   12 +++++++

These are stubs, CCing some relevant folks to see if they would like to
provide an implementation.

> diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
> index cd87614..888f068 100644
> --- a/tools/libxl/libxl.c
> +++ b/tools/libxl/libxl.c
> @@ -5121,6 +5121,64 @@ libxl_cputopology *libxl_get_cpu_topology(libxl_ctx 
> *ctx, int *nb_cpu_out)
>      return ret;
>  }
>  
> +libxl_pcitopology *libxl_get_pci_topology(libxl_ctx *ctx, int *num_devs)
> +{
> +    GC_INIT(ctx);
> +    xc_pcitopoinfo_t tinfo;
> +    DECLARE_HYPERCALL_BUFFER(xen_sysctl_pcitopo_t, pcitopo);
> +    libxl_pcitopology *ret = NULL;
> +    int i, rc;
> +
> +    tinfo.num_devs = libxl__pci_numdevs(gc);
> +    if (tinfo.num_devs <= 0) {
> +        LIBXL__LOG(ctx, XTL_ERROR, "Unable to determine number of PCI 
> devices");

Please use the shorter LOG*() macros, which will avoid long lines and
some wrapping.

> diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
> index 0a123f1..eb83f0a 100644
> --- a/tools/libxl/libxl.h
> +++ b/tools/libxl/libxl.h
> @@ -1070,6 +1070,10 @@ void libxl_vminfo_list_free(libxl_vminfo *list, int 
> nb_vm);
>  libxl_cputopology *libxl_get_cpu_topology(libxl_ctx *ctx, int *nb_cpu_out);
>  void libxl_cputopology_list_free(libxl_cputopology *, int nb_cpu);
>  
> +#define LIBXL_PCITOPOLOGY_INVALID_ENTRY (~(uint32_t)0)
> +libxl_pcitopology *libxl_get_pci_topology(libxl_ctx *ctx, int *num_dev);
> +void libxl_pcitopology_list_free(libxl_pcitopology *, int num_dev);

Needs a #define LIBXL_HAVE_FOO #define to advertise the new
functionality.

> diff --git a/tools/libxl/libxl_linux.c b/tools/libxl/libxl_linux.c
> index ea5d8c1..07428c0 100644
> --- a/tools/libxl/libxl_linux.c
> +++ b/tools/libxl/libxl_linux.c
> @@ -279,3 +279,74 @@ libxl_device_model_version 
> libxl__default_device_model(libxl__gc *gc)
>  {
>      return LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN;
>  }
> +
> +/* These two routines are "inspired" by pciutils */

"inspired" in a licensing consistent way?

Nothing else above the comments made by others.
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®.