summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJoerg Roedel <jroedel@suse.de>2017-10-13 14:32:37 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-10-18 09:35:39 +0200
commit3abebf0b8c5f3f0b34e5417f386203a2ae51cb00 (patch)
tree53784166792667d7716813699e7f5a9a49eb142d /drivers
parent4f28d1a742f94a88175beb09d92bf5402fa0a6b4 (diff)
downloadlinux-stable-3abebf0b8c5f3f0b34e5417f386203a2ae51cb00.tar.gz
linux-stable-3abebf0b8c5f3f0b34e5417f386203a2ae51cb00.tar.bz2
linux-stable-3abebf0b8c5f3f0b34e5417f386203a2ae51cb00.zip
iommu/amd: Finish TLB flush in amd_iommu_unmap()
commit ce76353f169a6471542d999baf3d29b121dce9c0 upstream. The function only sends the flush command to the IOMMU(s), but does not wait for its completion when it returns. Fix that. Fixes: 601367d76bd1 ('x86/amd-iommu: Remove iommu_flush_domain function') Signed-off-by: Joerg Roedel <jroedel@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/iommu/amd_iommu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c
index c380b7e8f1c6..1a0b110f12c0 100644
--- a/drivers/iommu/amd_iommu.c
+++ b/drivers/iommu/amd_iommu.c
@@ -3120,6 +3120,7 @@ static size_t amd_iommu_unmap(struct iommu_domain *dom, unsigned long iova,
mutex_unlock(&domain->api_lock);
domain_flush_tlb_pde(domain);
+ domain_flush_complete(domain);
return unmap_size;
}