ia64/xen-unstable

changeset 17936:0b7f7c564c83

VT-d: Do CLFLUSH after updating IRTE entries

Like root, context and DMA remap page table, interrupt remap table
also needs CLFLUSH after any update.

Signed-off-by: Weidong Han <weidong.han@intel.com>
author Keir Fraser <keir.fraser@citrix.com>
date Tue Jul 01 11:40:55 2008 +0100 (2008-07-01)
parents 0c5183e764d8
children d4cf12d128ed
files xen/drivers/passthrough/vtd/intremap.c
line diff
     1.1 --- a/xen/drivers/passthrough/vtd/intremap.c	Tue Jul 01 11:40:07 2008 +0100
     1.2 +++ b/xen/drivers/passthrough/vtd/intremap.c	Tue Jul 01 11:40:55 2008 +0100
     1.3 @@ -153,6 +153,7 @@ static void ioapic_rte_to_remap_entry(st
     1.4      }
     1.5  
     1.6      memcpy(iremap_entry, &new_ire, sizeof(struct iremap_entry));
     1.7 +    iommu_flush_cache_entry(iremap_entry);
     1.8      iommu_flush_iec_index(iommu, 0, index);
     1.9      invalidate_sync(iommu);
    1.10  
    1.11 @@ -378,6 +379,7 @@ static void msi_msg_to_remap_entry(
    1.12      remap_rte->data = 0;
    1.13  
    1.14      memcpy(iremap_entry, &new_ire, sizeof(struct iremap_entry));
    1.15 +    iommu_flush_cache_entry(iremap_entry);
    1.16      iommu_flush_iec_index(iommu, 0, index);
    1.17      invalidate_sync(iommu);
    1.18