On 07/16/2014 08:42 AM, Martin Kletzander wrote:
Signed-off-by: Martin Kletzander <mkletzan(a)redhat.com>
---
docs/formatdomain.html.in | 15 ++
docs/schemas/domaincommon.rng | 17 ++
src/conf/numatune_conf.c | 187 +++++++++++++++++++--
.../qemuxml2argv-numatune-memnode-no-memory.xml | 30 ++++
.../qemuxml2argv-numatune-memnode-nocpu.xml | 25 +++
.../qemuxml2argv-numatune-memnode.xml | 33 ++++
.../qemuxml2argv-numatune-memnodes-problematic.xml | 31 ++++
tests/qemuxml2argvtest.c | 2 +
.../qemuxml2xmlout-numatune-memnode.xml | 33 ++++
tests/qemuxml2xmltest.c | 2 +
10 files changed, 362 insertions(+), 13 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-numatune-memnode-no-memory.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-numatune-memnode-nocpu.xml
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-numatune-memnode.xml
create mode 100644
tests/qemuxml2argvdata/qemuxml2argv-numatune-memnodes-problematic.xml
create mode 100644 tests/qemuxml2xmloutdata/qemuxml2xmlout-numatune-memnode.xml
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index 9f1082b..1301639 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -709,6 +709,8 @@
...
<numatune>
<memory mode="strict" nodeset="1-4,^3"/>
+ <memnode cellid="0" mode="strict"
nodeset="1"/>
+ <memnode cellid="2" mode="preferred"
nodeset="2"/>
Ah, the ability to skip cellid's (for the cells that inherit the default
policies from <memory> makes it essential to have ids for correlation in
the earlier patch in this series.
</numatune>
...
</domain>
@@ -745,6 +747,19 @@
<span class='since'>Since 0.9.3</span>
</dd>
+ <dt><code>memnode</code></dt>
+ <dd>
+ Optional <code>memnode</code> elements can specify memory
allocation
+ policies per each guest NUMA node. For those nodes having no
+ corresponding <code>memnode</code> element, the default from
+ element <code>memory</code> will be used. Attribute
<code>cellid</code>
+ addresses guest NUMA node for which the settings are applied.
+ Attributes <code>mode</code> and <code>nodeset</code>
have the same
+ meaning and syntax as in <code>memory</code> element.
+
+ This setting is not compatible with automatic placement.
+ <span class='since'>QEMU Since 1.2.7</span>
Again, schema documentation looks okay to me.
+++ b/docs/schemas/domaincommon.rng
@@ -789,6 +789,23 @@
</choice>
</element>
</optional>
+ <zeroOrMore>
+ <element name="memnode">
+ <attribute name="cellid">
+ <ref name="unsignedInt"/>
+ </attribute>
+ <attribute name="mode">
+ <choice>
+ <value>strict</value>
+ <value>preferred</value>
+ <value>interleave</value>
+ </choice>
+ </attribute>
+ <attribute name='nodeset'>
+ <ref name='cpuset'/>
+ </attribute>
+ </element>
+ </zeroOrMore>
</element>
Missing an <interleave> here (<memory> and <memnode> should be
swappable
with one another).
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org