Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d41ab098 authored by Joerg Roedel's avatar Joerg Roedel
Browse files

iommu/amd: Flush iommu tlb in dma_ops_free_addresses



Instead of setting need_flush, do the flush directly in
dma_ops_free_addresses.

Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
parent ebaecb42
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -1648,8 +1648,10 @@ static void dma_ops_free_addresses(struct dma_ops_domain *dom,
		return;
#endif

	if ((address >> APERTURE_RANGE_SHIFT) >= dom->next_index)
		dom->need_flush = true;
	if (address + pages > range->next_bit) {
		domain_flush_tlb(&dom->domain);
		domain_flush_complete(&dom->domain);
	}

	address = (address % APERTURE_RANGE_SIZE) >> PAGE_SHIFT;