diff options
author | Yu Zhao <yu.zhao@intel.com> | 2009-05-07 22:33:38 -0400 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2009-05-10 10:55:09 -0400 |
commit | fa3b6dcd5298db2e7b63c17795c9e5570d3df8d9 (patch) | |
tree | 21287f8aaf7bf444f43b041f45e47a29a9203d4d /drivers/pci/intel-iommu.c | |
parent | aed5d5f4c5ea5da01a774e42cff08c4b4fa59072 (diff) |
VT-d: fix invalid domain id for KVM context flush
The domain->id is a sequence number associated with the KVM guest
and should not be used for the context flush. This patch replaces
the domain->id with a proper id value for both bare metal and KVM.
Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Acked-by: Weidong Han <weidong.han@intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'drivers/pci/intel-iommu.c')
-rw-r--r-- | drivers/pci/intel-iommu.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pci/intel-iommu.c b/drivers/pci/intel-iommu.c index d3edd6aa82ce..d6f4ee50924c 100644 --- a/drivers/pci/intel-iommu.c +++ b/drivers/pci/intel-iommu.c | |||
@@ -1429,7 +1429,7 @@ static int domain_context_mapping_one(struct dmar_domain *domain, int segment, | |||
1429 | domain_flush_cache(domain, context, sizeof(*context)); | 1429 | domain_flush_cache(domain, context, sizeof(*context)); |
1430 | 1430 | ||
1431 | /* it's a non-present to present mapping */ | 1431 | /* it's a non-present to present mapping */ |
1432 | if (iommu->flush.flush_context(iommu, domain->id, | 1432 | if (iommu->flush.flush_context(iommu, id, |
1433 | (((u16)bus) << 8) | devfn, DMA_CCMD_MASK_NOBIT, | 1433 | (((u16)bus) << 8) | devfn, DMA_CCMD_MASK_NOBIT, |
1434 | DMA_CCMD_DEVICE_INVL, 1)) | 1434 | DMA_CCMD_DEVICE_INVL, 1)) |
1435 | iommu_flush_write_buffer(iommu); | 1435 | iommu_flush_write_buffer(iommu); |