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 | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 45c5398..8545533 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -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]))) {
--
2.7.3