From ef264e82eeee72bea4e6d1332e0dd8bb9afa06ec Mon Sep 17 00:00:00 2001 From: Jiri Denemark Date: Mon, 4 Apr 2011 15:01:22 +0200 Subject: [PATCH] qemu: Ignore unusable binaries When initializing qemu guest capabilities, we should ignore qemu binaries that we are not able to extract version/help info from since they will be unusable for creating domains anyway. Ignoring them is also much better than letting initialization of qemu driver fail. --- src/qemu/qemu_capabilities.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index f86e7f5ef..63486cce7 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -490,6 +490,12 @@ qemuCapsInitGuest(virCapsPtr caps, if (!binary) return 0; + /* Ignore binary if extracting version info fails */ + if (qemuCapsExtractVersionInfo(binary, info->arch, NULL, &qemuCaps) < 0) { + ret = 0; + goto cleanup; + } + if (stat(binary, &st) == 0) { binary_mtime = st.st_mtime; } else { @@ -554,9 +560,8 @@ qemuCapsInitGuest(virCapsPtr caps, !virCapabilitiesAddGuestFeature(guest, "cpuselection", 1, 0)) goto error; - if (qemuCapsExtractVersionInfo(binary, info->arch, NULL, &qemuCaps) < 0 || - (qemuCapsGet(qemuCaps, QEMU_CAPS_BOOTINDEX) && - !virCapabilitiesAddGuestFeature(guest, "deviceboot", 1, 0))) + if (qemuCapsGet(qemuCaps, QEMU_CAPS_BOOTINDEX) && + !virCapabilitiesAddGuestFeature(guest, "deviceboot", 1, 0)) goto error; if (hvm) { -- 2.39.5