On Thu, Nov 03, 2011 at 07:55:20PM +0800, Hu Tao wrote: > This patch adds two parameters: strict and exclusive that we can > get/set through cpuset. > --- > src/conf/domain_conf.c | 15 +++++++++++++++ > src/conf/domain_conf.h | 2 ++ > 2 files changed, 17 insertions(+), 0 deletions(-) > > diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c > index 0cf3bb7..02a144b 100644 > --- a/src/conf/domain_conf.c > +++ b/src/conf/domain_conf.c > @@ -6802,6 +6802,10 @@ static virDomainDefPtr virDomainDefParseXML(virCapsPtr caps, > VIR_FREE(nodes); > > /* Extract numatune if exists. */ > + > + def->numatune.strict = 0; > + def->numatune.exclusive = 0; > + > if ((n = virXPathNodeSet("./numatune", ctxt, NULL)) < 0) { > virDomainReportError(VIR_ERR_INTERNAL_ERROR, > "%s", _("cannot extract numatune nodes")); > @@ -6829,6 +6833,13 @@ static virDomainDefPtr virDomainDefParseXML(virCapsPtr caps, > "%s", _("nodeset for NUMA memory tuning must be set")); > goto error; > } > + > + if (virXPathNode("./numatune/strict", ctxt)) { > + def->numatune.strict = 1; > + } > + if (virXPathNode("./numatune/exclusive", ctxt)) { > + def->numatune.exclusive = 1; > + } > } > > n = virXPathNodeSet("./features/*", ctxt, &nodes); > @@ -10876,6 +10887,10 @@ virDomainDefFormatInternal(virDomainDefPtr def, > > virBufferAsprintf(buf, " <memory nodeset='%s'/>\n", nodemask); > VIR_FREE(nodemask); > + if (def->numatune.strict) > + virBufferAsprintf(buf, " <strict/>\n"); > + if (def->numatune.exclusive) > + virBufferAsprintf(buf, " <exclusive/>\n"); > virBufferAddLit(buf, " </numatune>\n"); > } > > diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h > index ca68437..f3dbece 100644 > --- a/src/conf/domain_conf.h > +++ b/src/conf/domain_conf.h > @@ -1355,6 +1355,8 @@ struct _virDomainNumatuneDef { > char *nodemask; > } memory; > > + int strict; > + int exclusive; > /* Future NUMA tuning related stuff should go here. */ > }; NACK to this for the same reason as the previous patch - we can't simply change the XML format at will to suit a new backend implementation. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list