Prechádzať zdrojové kódy

xen/pci: Check for PCI bridge before using it.

Some SR-IOV devices may use more than one bus number, but there is no real bridges
because that have internal routing mechanism. So need to check whether the bridge is
existing before using it.

Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Zhang, Yang Z 13 rokov pred
rodič
commit
780dbcd0ee
1 zmenil súbory, kde vykonal 1 pridanie a 1 odobranie
  1. 1 1
      drivers/xen/pci.c

+ 1 - 1
drivers/xen/pci.c

@@ -59,7 +59,7 @@ static int xen_add_device(struct device *dev)
 
 
 #ifdef CONFIG_ACPI
 #ifdef CONFIG_ACPI
 		handle = DEVICE_ACPI_HANDLE(&pci_dev->dev);
 		handle = DEVICE_ACPI_HANDLE(&pci_dev->dev);
-		if (!handle)
+		if (!handle && pci_dev->bus->bridge)
 			handle = DEVICE_ACPI_HANDLE(pci_dev->bus->bridge);
 			handle = DEVICE_ACPI_HANDLE(pci_dev->bus->bridge);
 #ifdef CONFIG_PCI_IOV
 #ifdef CONFIG_PCI_IOV
 		if (!handle && pci_dev->is_virtfn)
 		if (!handle && pci_dev->is_virtfn)