aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-01-21 11:26:26 +0000
committerKeir Fraser <keir.fraser@citrix.com>2010-01-21 11:26:26 +0000
commit92181f18298ff8c415354150414efb7195c1b620 (patch)
treed8c4dbbaf40a7f2a77ad6b6a7a333626a4113116
parent41a41718c4503078fd084c5f3344fe4448936906 (diff)
downloadxen-92181f18298ff8c415354150414efb7195c1b620.tar.gz
xen-92181f18298ff8c415354150414efb7195c1b620.tar.bz2
xen-92181f18298ff8c415354150414efb7195c1b620.zip
VT-d: warn on bogus RMRR entry
Signed-off-by: Weidong Han <weidong.han@intel.com>
-rw-r--r--xen/drivers/passthrough/vtd/dmar.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/xen/drivers/passthrough/vtd/dmar.c b/xen/drivers/passthrough/vtd/dmar.c
index 971100fe3e..9ae39a4cf9 100644
--- a/xen/drivers/passthrough/vtd/dmar.c
+++ b/xen/drivers/passthrough/vtd/dmar.c
@@ -453,7 +453,13 @@ acpi_parse_one_rmrr(struct acpi_dmar_entry_header *header)
f = PCI_FUNC(rmrru->scope.devices[i]);
if ( pci_device_detect(b, d, f) == 0 )
+ {
+ dprintk(XENLOG_WARNING VTDPREFIX,
+ " Non-existent device (%x:%x.%x) is reported "
+ "in RMRR (%"PRIx64", %"PRIx64")'s scope!\n",
+ b, d, f, rmrru->base_address, rmrru->end_address);
ignore = 1;
+ }
else
{
ignore = 0;