[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[libvirt] [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 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index f86e7f5..63486cc 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) {
-- 
1.7.4.1


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]