From: Jiang Liu Date: Fri, 11 Jul 2014 06:19:26 +0000 (+0800) Subject: iommu/vt-d: Use correct domain id to flush virtual machine domains X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=18fd779a41eff52b597bd2d327194f98a83de4af;p=linux-beck.git iommu/vt-d: Use correct domain id to flush virtual machine domains For virtual machine domains, domain->id is a virtual id, and the real domain id written into context entry is dynamically allocated. So use the real domain id instead of domain->id when flushing iotlbs for virtual machine domains. Signed-off-by: Jiang Liu Signed-off-by: Joerg Roedel --- diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c index 147ab1c0b573..d77009bdade5 100644 --- a/drivers/iommu/intel-iommu.c +++ b/drivers/iommu/intel-iommu.c @@ -1822,7 +1822,7 @@ static int domain_context_mapping_one(struct dmar_domain *domain, (((u16)bus) << 8) | devfn, DMA_CCMD_MASK_NOBIT, DMA_CCMD_DEVICE_INVL); - iommu->flush.flush_iotlb(iommu, domain->id, 0, 0, DMA_TLB_DSI_FLUSH); + iommu->flush.flush_iotlb(iommu, id, 0, 0, DMA_TLB_DSI_FLUSH); } else { iommu_flush_write_buffer(iommu); }