render / rpms / libvirt

Forked from rpms/libvirt 9 months ago
Clone
edecca
From 2ef60f04d9beea2d46cfd4344a8c5482276979c2 Mon Sep 17 00:00:00 2001
edecca
Message-Id: <2ef60f04d9beea2d46cfd4344a8c5482276979c2@dist-git>
edecca
From: Erik Skultety <eskultet@redhat.com>
edecca
Date: Tue, 31 Jul 2018 10:38:54 +0200
edecca
Subject: [PATCH] qemu: Exempt video model 'none' from getting a PCI address on
edecca
 Q35
edecca
MIME-Version: 1.0
edecca
Content-Type: text/plain; charset=UTF-8
edecca
Content-Transfer-Encoding: 8bit
edecca
edecca
Commit d48813e8 made sure we wouldn't get one for i440fx, but not for Q35
edecca
machine type. If the primary video didn't get the assumed 0:0:1.0 PCI
edecca
address, the evaluation then failed with: "Cannot automatically add a
edecca
new PCI bus for a device with connect flags 00"
edecca
edecca
https: //bugzilla.redhat.com/show_bug.cgi?id=1609087
edecca
Signed-off-by: Erik Skultety <eskultet@redhat.com>
edecca
(cherry picked from commit e9024b0cec3a66ac11784034bb62abe8ec7b46a1)
edecca
Signed-off-by: Erik Skultety <eskultet@redhat.com>
edecca
Reviewed-by: Ján Tomko <jtomko@redhat.com>
edecca
---
edecca
 src/qemu/qemu_domain_address.c | 5 +++--
edecca
 1 file changed, 3 insertions(+), 2 deletions(-)
edecca
edecca
diff --git a/src/qemu/qemu_domain_address.c b/src/qemu/qemu_domain_address.c
edecca
index e6996934b8..0cb5af4a87 100644
edecca
--- a/src/qemu/qemu_domain_address.c
edecca
+++ b/src/qemu/qemu_domain_address.c
edecca
@@ -1723,10 +1723,11 @@ qemuDomainValidateDevicePCISlotsQ35(virDomainDefPtr def,
edecca
            goto cleanup;
edecca
     }
edecca
 
edecca
-    if (def->nvideos > 0) {
edecca
+    if (def->nvideos > 0 &&
edecca
+        def->videos[0]->type != VIR_DOMAIN_VIDEO_TYPE_NONE) {
edecca
         /* NB: unlike the pc machinetypes, on q35 machinetypes the
edecca
          * integrated devices are at slot 0x1f, so when qemu looks for
edecca
-         * the first free lot for the first VGA, it will always be at
edecca
+         * the first free slot for the first VGA, it will always be at
edecca
          * slot 1 (which was used up by the integrated PIIX3 devices
edecca
          * on pc machinetypes).
edecca
          */
edecca
-- 
edecca
2.18.0
edecca