On Fri, Dec 16, 2011 at 03:45:36PM -0700, Eric Blake wrote: > On 12/15/2011 03:50 AM, Hu Tao wrote: > > Set up the types for the numa functions and insert them into the > > virDriver structure definition. > > --- > > include/libvirt/libvirt.h.in | 23 +++++++++++++++++++++++ > > python/generator.py | 2 ++ > > src/driver.h | 15 +++++++++++++++ > > src/libvirt_public.syms | 6 ++++++ > > 4 files changed, 46 insertions(+), 0 deletions(-) > > > > > +/* Manage numa parameters */ > > + > > +/** > > + * VIR_DOMAIN_NUMA_NODESET: > > + * > > + * numa nodeset > > + */ > > +#define VIR_DOMAIN_NUMA_NODESET "numa_nodeset" > > + > > +/** > > + * VIR_DOMAIN_NUMA_MODE: > > + * > > + * numa mode > > + */ > > +#define VIR_DOMAIN_NUMA_MODE "numa_mode" > > That's awfully sparse on details, such as what type is expected. > Furthermore, after reading 6/8, I noticed that you are using numa_mode > to hold a non-public enum value, which makes it a non-starter. I'm > squashing this in, to make the enum public and add some documentation. Sorry didn't notice the enums are not public. > > diff --git i/include/libvirt/libvirt.h.in w/include/libvirt/libvirt.h.in > index 55f27ae..da370fb 100644 > --- i/include/libvirt/libvirt.h.in > +++ w/include/libvirt/libvirt.h.in > @@ -1347,16 +1347,32 @@ typedef enum { > /* Manage numa parameters */ > > /** > + * virDomainNumatuneMemMode: > + * Representation of the various modes in the <numatune> element of > + * a domain. > + */ > +enum virDomainNumatuneMemMode { Error on generating docs here. Changing to typedef enum { ... } virDomainNumatuneMemMode; makes it works. The rest seems ok to me. > + VIR_DOMAIN_NUMATUNE_MEM_STRICT = 0, > + VIR_DOMAIN_NUMATUNE_MEM_PREFERRED = 1, > + VIR_DOMAIN_NUMATUNE_MEM_INTERLEAVE = 2, > + > + /* This constant is subject to change */ > + VIR_DOMAIN_NUMATUNE_MEM_LAST > +}; > + > +/** > * VIR_DOMAIN_NUMA_NODESET: > * > - * numa nodeset > + * Macro for typed parameter name that lists the numa nodeset of a > + * domain, as a string. > */ > #define VIR_DOMAIN_NUMA_NODESET "numa_nodeset" > > /** > * VIR_DOMAIN_NUMA_MODE: > * > - * numa mode > + * Macro for typed parameter name that lists the numa mode of a domain, > + * as an int containing a virDomainNumatuneMemMode value. > */ > #define VIR_DOMAIN_NUMA_MODE "numa_mode" > > diff --git i/src/conf/domain_conf.h w/src/conf/domain_conf.h > index 3229a6f..189b8f6 100644 > --- i/src/conf/domain_conf.h > +++ w/src/conf/domain_conf.h > @@ -1355,14 +1355,6 @@ virDomainVcpuPinDefPtr > virDomainVcpuPinFindByVcpu(virDomainVcpuPinDefPtr *def, > int nvcpupin, > int vcpu); > > -enum virDomainNumatuneMemMode { > - VIR_DOMAIN_NUMATUNE_MEM_STRICT, > - VIR_DOMAIN_NUMATUNE_MEM_PREFERRED, > - VIR_DOMAIN_NUMATUNE_MEM_INTERLEAVE, > - > - VIR_DOMAIN_NUMATUNE_MEM_LAST > -}; > - > typedef struct _virDomainNumatuneDef virDomainNumatuneDef; > typedef virDomainNumatuneDef *virDomainNumatuneDefPtr; > struct _virDomainNumatuneDef { > > -- > Eric Blake eblake@xxxxxxxxxx +1-919-301-3266 > Libvirt virtualization library http://libvirt.org > -- Thanks, Hu Tao -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list