]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: command: Pass numad nodeset when formatting memory devices at boot
authorPeter Krempa <pkrempa@redhat.com>
Thu, 24 Mar 2016 15:05:11 +0000 (16:05 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Wed, 30 Mar 2016 11:56:43 +0000 (13:56 +0200)
When starting up a VM libvirtd asks numad to place the VM in case of
automatic nodeset. The nodeset would not be passed to the memory device
formatter and the user would get an error.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1269715

src/qemu/qemu_command.c

index 45c5398ad8b9e4e8f3ee6861d368c4f2ae898c6f..8545533aebfd938fdf09539532378f0ca649c39e 100644 (file)
@@ -2945,7 +2945,8 @@ static char *
 qemuBuildMemoryDimmBackendStr(virDomainMemoryDefPtr mem,
                               virDomainDefPtr def,
                               virQEMUCapsPtr qemuCaps,
-                              virQEMUDriverConfigPtr cfg)
+                              virQEMUDriverConfigPtr cfg,
+                              virBitmapPtr auto_nodeset)
 {
     virJSONValuePtr props = NULL;
     char *alias = NULL;
@@ -2962,7 +2963,7 @@ qemuBuildMemoryDimmBackendStr(virDomainMemoryDefPtr mem,
         goto cleanup;
 
     if (qemuBuildMemoryBackendStr(mem->size, mem->pagesize,
-                                  mem->targetNode, mem->sourceNodes, NULL,
+                                  mem->targetNode, mem->sourceNodes, auto_nodeset,
                                   def, qemuCaps, cfg,
                                   &backendType, &props, true) < 0)
         goto cleanup;
@@ -7200,7 +7201,7 @@ qemuBuildNumaCommandLine(virCommandPtr cmd,
         char *dimmStr;
 
         if (!(backStr = qemuBuildMemoryDimmBackendStr(def->mems[i], def,
-                                                      qemuCaps, cfg)))
+                                                      qemuCaps, cfg, nodeset)))
             return -1;
 
         if (!(dimmStr = qemuBuildMemoryDeviceStr(def->mems[i]))) {