]> xenbits.xensource.com Git - libvirt.git/commitdiff
conf: numa: Add accessor to NUMA node's memory access mode
authorPeter Krempa <pkrempa@redhat.com>
Mon, 16 Feb 2015 17:51:36 +0000 (18:51 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Fri, 20 Feb 2015 16:50:08 +0000 (17:50 +0100)
src/conf/numa_conf.c
src/conf/numa_conf.h
src/libvirt_private.syms
src/qemu/qemu_command.c

index d13d293bce9f0e48775aa9226f5d1a100cb35b2e..7506e21e6fcb7da1ab080275ce5afeaedb63926d 100644 (file)
@@ -769,7 +769,7 @@ virDomainNumaDefCPUFormat(virBufferPtr buf,
     virBufferAddLit(buf, "<numa>\n");
     virBufferAdjustIndent(buf, 2);
     for (i = 0; i < ncells; i++) {
-        memAccess = def->cells[i].memAccess;
+        memAccess = virDomainNumaGetNodeMemoryAccessMode(def, i);
 
         if (!(cpustr = virBitmapFormat(virDomainNumaGetNodeCpumask(def, i))))
             return -1;
@@ -832,3 +832,11 @@ virDomainNumaGetNodeCpumask(virCPUDefPtr numa,
 {
     return numa->cells[node].cpumask;
 }
+
+
+virNumaMemAccess
+virDomainNumaGetNodeMemoryAccessMode(virCPUDefPtr numa,
+                                     size_t node)
+{
+    return numa->cells[node].memAccess;
+}
index ad12c724574559c263556fb53fa1b3bca94446a6..8ebce4982a3e739ec022dcf0b70d67b854f39489 100644 (file)
@@ -91,6 +91,9 @@ size_t virDomainNumaGetNodeCount(virCPUDefPtr numa)
 virBitmapPtr virDomainNumaGetNodeCpumask(virCPUDefPtr numa,
                                          size_t node)
     ATTRIBUTE_NONNULL(1);
+virNumaMemAccess virDomainNumaGetNodeMemoryAccessMode(virCPUDefPtr numa,
+                                                      size_t node)
+    ATTRIBUTE_NONNULL(1);
 
 /*
  * Formatters
index d9b0e05e8af2d3eaa2fd95bd40938882b7b5dcb6..ab3a014b55232d2408333043b4f69ce6a25a5bec 100644 (file)
@@ -631,6 +631,7 @@ virDomainNumaEquals;
 virDomainNumaFree;
 virDomainNumaGetNodeCount;
 virDomainNumaGetNodeCpumask;
+virDomainNumaGetNodeMemoryAccessMode;
 virDomainNumaNew;
 virDomainNumatuneFormatNodeset;
 virDomainNumatuneFormatXML;
index 8daa2999c2dd1d842170604b5d1416bf22d5c3aa..d5cb190dc45b6949974cc0c038f7edbbeb4099c7 100644 (file)
@@ -4558,7 +4558,8 @@ qemuBuildMemoryBackendStr(unsigned long long size,
     virDomainHugePagePtr hugepage = NULL;
     virDomainNumatuneMemMode mode;
     const long system_page_size = virGetSystemPageSizeKB();
-    virNumaMemAccess memAccess = def->cpu->cells[guestNode].memAccess;
+    virNumaMemAccess memAccess = virDomainNumaGetNodeMemoryAccessMode(def->cpu, guestNode);
+
     size_t i;
     char *mem_path = NULL;
     virBitmapPtr nodemask = NULL;
@@ -7188,7 +7189,7 @@ qemuBuildNumaArgStr(virQEMUDriverConfigPtr cfg,
             if (rc == 0)
                 needBackend = true;
         } else {
-            if (def->cpu->cells[i].memAccess) {
+            if (virDomainNumaGetNodeMemoryAccessMode(def->cpu, i)) {
                 virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
                                _("Shared memory mapping is not supported "
                                  "with this QEMU"));