debuggers.hg
changeset 21069:594142f8c0bb
VTd: Ignore HPET/IOAPIC decls in DRHD scopes
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
author | Keir Fraser <keir.fraser@citrix.com> |
---|---|
date | Thu Mar 11 08:08:32 2010 +0000 (2010-03-11) |
parents | 132ac04cbdba |
children | d3720d951173 |
files | xen/drivers/passthrough/vtd/dmar.c |
line diff
1.1 --- a/xen/drivers/passthrough/vtd/dmar.c Tue Mar 09 18:18:19 2010 +0000 1.2 +++ b/xen/drivers/passthrough/vtd/dmar.c Thu Mar 11 08:08:32 2010 +0000 1.3 @@ -407,9 +407,15 @@ acpi_parse_one_drhd(struct acpi_dmar_ent 1.4 { 1.5 u8 b, d, f; 1.6 int i, invalid_cnt = 0; 1.7 + void *p; 1.8 1.9 - for ( i = 0; i < dmaru->scope.devices_cnt; i++ ) 1.10 + for ( i = 0, p = dev_scope_start; i < dmaru->scope.devices_cnt; 1.11 + i++, p += ((struct acpi_dev_scope *)p)->length ) 1.12 { 1.13 + if ( ((struct acpi_dev_scope *)p)->dev_type == ACPI_DEV_IOAPIC || 1.14 + ((struct acpi_dev_scope *)p)->dev_type == ACPI_DEV_MSI_HPET ) 1.15 + continue; 1.16 + 1.17 b = PCI_BUS(dmaru->scope.devices[i]); 1.18 d = PCI_SLOT(dmaru->scope.devices[i]); 1.19 f = PCI_FUNC(dmaru->scope.devices[i]);