Keir Fraser wrote:
Sorry, I disagree with Noboru after thinking it again. If the RMRR has
both no-existent device and also has existent devices in its scope, we
should not ignore it because the existent devices under its scope will
be impacted without the RMRR. so I suggest to print a warning instead of
ignore it. Attached a patch for it.
On 21/01/2010 10:19, "Weidong Han" <weidong.han@xxxxxxxxx> wrote:
Sorry this is typo.
So, I think RMRR that has no-existent device is "invalid"
and whole RMRR should be ignored.
Keir, I Acks Noboru's rmrr patch. Or do you want us to merge them to one
Merge them up, re-send with both sign-off and acked-by all in one email.
Signed-off-by: Weidong Han <weidong.han@xxxxxxxxx>
diff -r ea02c95af387 xen/drivers/passthrough/vtd/dmar.c
--- a/xen/drivers/passthrough/vtd/dmar.c Thu Jan 21 09:13:46 2010 +0000
+++ b/xen/drivers/passthrough/vtd/dmar.c Thu Jan 21 18:43:53 2010 +0800
@@ -453,7 +453,13 @@ acpi_parse_one_rmrr(struct acpi_dmar_ent
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;
ignore = 0;
Xen-devel mailing list