diff options
author | Joerg Roedel <jroedel@suse.de> | 2015-12-21 13:14:52 +0100 |
---|---|---|
committer | Joerg Roedel <jroedel@suse.de> | 2015-12-28 17:18:50 +0100 |
commit | 53b3b65aa5befe9e96e8f8708a76208190a07e14 (patch) | |
tree | 162e187c01248eb87c4a6cf518037a5cf2ffb199 /drivers/iommu | |
parent | 08c5fb938e05314b48fc12e697003e91d43c3c9d (diff) | |
download | talos-obmc-linux-53b3b65aa5befe9e96e8f8708a76208190a07e14.tar.gz talos-obmc-linux-53b3b65aa5befe9e96e8f8708a76208190a07e14.zip |
iommu/amd: Flush IOMMU TLB on __map_single error path
There have been present PTEs which in theory could have made
it to the IOMMU TLB. Flush the addresses out on the error
path to make sure no stale entries remain.
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to 'drivers/iommu')
-rw-r--r-- | drivers/iommu/amd_iommu.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c index 8ff33314a668..42c0a81ba9b3 100644 --- a/drivers/iommu/amd_iommu.c +++ b/drivers/iommu/amd_iommu.c @@ -2493,6 +2493,8 @@ out_unmap: dma_ops_domain_unmap(dma_dom, start); } + domain_flush_pages(&dma_dom->domain, address, size); + dma_ops_free_addresses(dma_dom, address, pages); return DMA_ERROR_CODE; |