提交 400e716d 编写于 作者: J Jim Fehlig

libxl: don't attempt to probe a non-existent emulator

When probing the <emulator> with '-help' to determine if
it is the old qemu, errors are reported if the emulator
doesn't exist

libvirt:  error : internal error: Child process
(/usr/lib/xen/bin/qemu-dm -help) unexpected exit status 127:
libvirt:  error : cannot execute binary /usr/lib/xen/bin/qemu-dm:
No such file or directory

Avoid the probe if the specified emulator doesn't exist,
squelching the error. There is no behavior change since
libxlDomainGetEmulatorType() would return
LIBXL_DEVICE_MODEL_VERSION_QEMU_XEN if the probe failed
via virCommandRun().
Signed-off-by: NJim Fehlig <jfehlig@suse.com>
上级 3902f634
...@@ -916,6 +916,9 @@ libxlDomainGetEmulatorType(const virDomainDef *def) ...@@ -916,6 +916,9 @@ libxlDomainGetEmulatorType(const virDomainDef *def)
if (def->os.type == VIR_DOMAIN_OSTYPE_HVM) { if (def->os.type == VIR_DOMAIN_OSTYPE_HVM) {
if (def->emulator) { if (def->emulator) {
if (!virFileExists(def->emulator))
goto cleanup;
cmd = virCommandNew(def->emulator); cmd = virCommandNew(def->emulator);
virCommandAddArgList(cmd, "-help", NULL); virCommandAddArgList(cmd, "-help", NULL);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册