diff options
author | Will Deacon <will@kernel.org> | 2019-07-02 11:44:06 -0400 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2019-07-29 12:22:52 -0400 |
commit | 56f8af5e9d38f120cba2c2adb0786fa2dbc901a4 (patch) | |
tree | b46a5f01874bd1543e610949be6171296cd6300e /drivers/iommu/intel-iommu.c | |
parent | 4fcf8544fc677fc8af135f1d86b3ba69c4ad429d (diff) |
iommu: Pass struct iommu_iotlb_gather to ->unmap() and ->iotlb_sync()
To allow IOMMU drivers to batch up TLB flushing operations and postpone
them until ->iotlb_sync() is called, extend the prototypes for the
->unmap() and ->iotlb_sync() IOMMU ops callbacks to take a pointer to
the current iommu_iotlb_gather structure.
All affected IOMMU drivers are updated, but there should be no
functional change since the extra parameter is ignored for now.
Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'drivers/iommu/intel-iommu.c')
-rw-r--r-- | drivers/iommu/intel-iommu.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c index ac4172c02244..b9fb8d6ddc6e 100644 --- a/drivers/iommu/intel-iommu.c +++ b/drivers/iommu/intel-iommu.c | |||
@@ -5147,7 +5147,8 @@ static int intel_iommu_map(struct iommu_domain *domain, | |||
5147 | } | 5147 | } |
5148 | 5148 | ||
5149 | static size_t intel_iommu_unmap(struct iommu_domain *domain, | 5149 | static size_t intel_iommu_unmap(struct iommu_domain *domain, |
5150 | unsigned long iova, size_t size) | 5150 | unsigned long iova, size_t size, |
5151 | struct iommu_iotlb_gather *gather) | ||
5151 | { | 5152 | { |
5152 | struct dmar_domain *dmar_domain = to_dmar_domain(domain); | 5153 | struct dmar_domain *dmar_domain = to_dmar_domain(domain); |
5153 | struct page *freelist = NULL; | 5154 | struct page *freelist = NULL; |