On Wed, Mar 25, 2015 at 14:34:04 +0800, Luyao Huang wrote: > When we set a host not exist nodemask in memory device and then > start the vm, qemu will report error. > > # virsh start test3 > error: Failed to start domain test3 > error: internal error: process exited while connecting to monitor: > 2015-03-25T01:12:17.205913Z qemu-kvm: -object memory-backend-ram,id=memdimm0 > ,size=536870912,host-nodes=1-3,policy=bind: cannot bind memory to host NUMA nodes: > Invalid argument > > We have some function to check this, and add a check when build > memory cmd line will report error more early and clearly. And the > check will be done when we start a vm have memory device and hotplug > a memory device. The error will be: > > # virsh start test3 > error: Failed to start domain test3 > error: internal error: NUMA node 1 is unavailable The error message is not ideal. I'll tweak the error code in virNumaNodesetIsAvailable() to VIR_ERR_CONFIG_UNSUPPORTED. > > Signed-off-by: Luyao Huang <lhuang@xxxxxxxxxx> > --- > src/qemu/qemu_command.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c > index 99a19d6..04c8df7 100644 > --- a/src/qemu/qemu_command.c > +++ b/src/qemu/qemu_command.c > @@ -4757,6 +4757,8 @@ qemuBuildMemoryBackendStr(unsigned long long size, > } > > if (nodemask) { > + if (!virNumaNodesetIsAvailable(nodemask)) > + goto cleanup; > if (virJSONValueObjectAdd(props, > "m:host-nodes", nodemask, > "S:policy", qemuNumaPolicyTypeToString(mode), ACK. I'll tweak the commit message though. Peter
Attachment:
signature.asc
Description: Digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list