iommu: Indicate queued flushes via gather data
authorRobin Murphy <robin.murphy@arm.com>
Wed, 11 Aug 2021 12:21:28 +0000 (13:21 +0100)
committerJoerg Roedel <jroedel@suse.de>
Wed, 18 Aug 2021 11:25:32 +0000 (13:25 +0200)
commit7a7c5badf85806eab75e31ab8d45021f1545b0e3
tree426957aa85d006744de240c29724cf91b190389e
parent8d971243a9a7d73a410450951a21f298f1394dc7
iommu: Indicate queued flushes via gather data

Since iommu_iotlb_gather exists to help drivers optimise flushing for a
given unmap request, it is also the logical place to indicate whether
the unmap is strict or not, and thus help them further optimise for
whether to expect a sync or a flush_all subsequently. As part of that,
it also seems fair to make the flush queue code take responsibility for
enforcing the really subtle ordering requirement it brings, so that we
don't need to worry about forgetting that if new drivers want to add
flush queue support, and can consolidate the existing versions.

While we're adding to the kerneldoc, also fill in some info for
@freelist which was overlooked previously.

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Link: https://lore.kernel.org/r/bf5f8e2ad84e48c712ccbf80fa8c610594c7595f.1628682049.git.robin.murphy@arm.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/dma-iommu.c
drivers/iommu/iova.c
include/linux/iommu.h