]> xenbits.xensource.com Git - libvirt.git/commitdiff
Memory: Use consistent type for all memory elements.
authorPrerna Saxena <prerna@linux.vnet.ibm.com>
Fri, 31 Oct 2014 10:37:21 +0000 (16:07 +0530)
committerMichal Privoznik <mprivozn@redhat.com>
Wed, 5 Nov 2014 13:21:15 +0000 (14:21 +0100)
Domain memory elements such as max_balloon and cur_balloon are
implemented as 'unsigned long long', whereas the 'memory' element
in NUMA cells is implemented as 'unsigned int'.

Use the same data type (unsigned long long) for 'memory' element
in NUMA cells.

Signed-off-by: Prerna Saxena <prerna@linux.vnet.ibm.com>
src/conf/cpu_conf.c
src/conf/cpu_conf.h
src/qemu/qemu_command.c

index 9b7fbb080b0104dea588eb29590a31a4e8d96986..5475c073d305139c39ada40a5304eeb17d7ba2cd 100644 (file)
@@ -496,7 +496,7 @@ virCPUDefParseXML(xmlNodePtr node,
                 goto error;
             }
 
-            ret = virStrToLong_ui(memory, NULL, 10, &def->cells[cur_cell].mem);
+            ret = virStrToLong_ull(memory, NULL, 10, &def->cells[cur_cell].mem);
             if (ret == -1) {
                 virReportError(VIR_ERR_XML_ERROR, "%s",
                                _("Invalid 'memory' attribute in NUMA cell"));
@@ -702,7 +702,7 @@ virCPUDefFormatBuf(virBufferPtr buf,
             virBufferAddLit(buf, "<cell");
             virBufferAsprintf(buf, " id='%zu'", i);
             virBufferAsprintf(buf, " cpus='%s'", def->cells[i].cpustr);
-            virBufferAsprintf(buf, " memory='%d'", def->cells[i].mem);
+            virBufferAsprintf(buf, " memory='%llu'", def->cells[i].mem);
             if (memAccess)
                 virBufferAsprintf(buf, " memAccess='%s'",
                                   virMemAccessTypeToString(memAccess));
index d45210be3e645348219f976cec184ffdfdea3542..5bcf10178b2736879a4e759f3ea3bbc7a8c96fc2 100644 (file)
@@ -105,7 +105,7 @@ typedef virCellDef *virCellDefPtr;
 struct _virCellDef {
     virBitmapPtr cpumask; /* CPUs that are part of this node */
     char *cpustr;         /* CPUs stored in string form for dumpxml */
-    unsigned int mem;     /* Node memory in kB */
+    unsigned long long mem;     /* Node memory in kB */
     virMemAccess memAccess;
 };
 
index 917639e0db007e776a96e7ed9984a4e61f49ced7..13b54dd02f7306e6aea5d31726e3377403218e91 100644 (file)
@@ -6693,7 +6693,7 @@ qemuBuildNumaArgStr(virQEMUDriverConfigPtr cfg,
     }
 
     for (i = 0; i < def->cpu->ncells; i++) {
-        int cellmem = VIR_DIV_UP(def->cpu->cells[i].mem, 1024);
+        unsigned long long cellmem = VIR_DIV_UP(def->cpu->cells[i].mem, 1024);
         def->cpu->cells[i].mem = cellmem * 1024;
         virMemAccess memAccess = def->cpu->cells[i].memAccess;
 
@@ -6799,7 +6799,7 @@ qemuBuildNumaArgStr(virQEMUDriverConfigPtr cfg,
                 virBufferAddLit(&buf, "memory-backend-ram");
             }
 
-            virBufferAsprintf(&buf, ",size=%dM,id=ram-node%zu", cellmem, i);
+            virBufferAsprintf(&buf, ",size=%lluM,id=ram-node%zu", cellmem, i);
 
             if (virDomainNumatuneMaybeFormatNodeset(def->numatune, nodeset,
                                                     &nodemask, i) < 0)
@@ -6849,7 +6849,7 @@ qemuBuildNumaArgStr(virQEMUDriverConfigPtr cfg,
             virQEMUCapsGet(qemuCaps, QEMU_CAPS_OBJECT_MEMORY_FILE)) {
             virBufferAsprintf(&buf, ",memdev=ram-node%zu", i);
         } else {
-            virBufferAsprintf(&buf, ",mem=%d", cellmem);
+            virBufferAsprintf(&buf, ",mem=%llu", cellmem);
         }
 
         virCommandAddArgBuffer(cmd, &buf);