diff --git a/xen/drivers/passthrough/vtd/dmar.c b/xen/drivers/passthrough/vtd/dmar.c index 78d4526446..4936c20952 100644 --- a/xen/drivers/passthrough/vtd/dmar.c +++ b/xen/drivers/passthrough/vtd/dmar.c @@ -389,7 +389,7 @@ static int __init acpi_parse_dev_scope( printk(VTDPREFIX " endpoint: %pp\n", &PCI_SBDF(seg, bus, path->dev, path->fn)); - if ( drhd ) + if ( drhd && pci_device_detect(seg, bus, path->dev, path->fn) ) { if ( pci_conf_read8(PCI_SBDF(seg, bus, path->dev, path->fn), PCI_CLASS_DEVICE + 1) != 0x03