]> git.proxmox.com Git - qemu-server.git/commitdiff
QemuServer: fix wrong binding of pci root ports, bridges or switches to vfio
authorStefan Priebe <s.priebe@profihost.ag>
Sun, 1 Feb 2015 19:46:46 +0000 (20:46 +0100)
committerDietmar Maurer <dietmar@proxmox.com>
Wed, 11 Feb 2015 05:31:41 +0000 (06:31 +0100)
Signed-off-by: Stefan Priebe <s.priebe@profihost.ag>
PVE/QemuServer.pm

index 59441e19ab01cbcc9d0a52fee863cea02fa7f47a..5d7f9d718474ebd4a2f93f0f30363c85d4f8c04e 100644 (file)
@@ -4600,6 +4600,11 @@ sub pci_dev_group_bind_to_vfio {
 
     foreach my $pciid (@devs) {
        $pciid =~ m/^([:\.\da-f]+)$/ or die "PCI ID $pciid not valid!\n";
+
+        # pci bridges, switches or root ports are not supported
+        # they have a pci_bus subdirectory so skip them
+        next if (-e "$pcisysfs/devices/$pciid/pci_bus");
+
        my $info = pci_device_info($1);
        pci_dev_bind_to_vfio($info) || die "Cannot bind $pciid to vfio\n";
     }