diff options
author | Jim Fehlig <jfehlig@suse.com> | 2016-05-12 14:40:28 -0600 |
---|---|---|
committer | Jim Fehlig <jfehlig@suse.com> | 2016-05-13 10:08:34 -0600 |
commit | 400e716d7d8371fa718c27bb4f05b9a68929e64a (patch) | |
tree | d88623872477df4086ddb39c2dabf080de3daa9b | |
parent | 3902f634bf32f9e7a98fd7cfb7910ccef5021fb5 (diff) | |
download | libvirt-400e716d7d8371fa718c27bb4f05b9a68929e64a.tar.gz |
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: Jim Fehlig <jfehlig@suse.com>
-rw-r--r-- | src/libxl/libxl_conf.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c index d927b374e6..3c388c7796 100644 --- a/src/libxl/libxl_conf.c +++ b/src/libxl/libxl_conf.c @@ -916,6 +916,9 @@ libxlDomainGetEmulatorType(const virDomainDef *def) if (def->os.type == VIR_DOMAIN_OSTYPE_HVM) { if (def->emulator) { + if (!virFileExists(def->emulator)) + goto cleanup; + cmd = virCommandNew(def->emulator); virCommandAddArgList(cmd, "-help", NULL); |