aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJason Gunthorpe <jgg@nvidia.com>2024-10-18 14:01:19 -0300
committerJoerg Roedel <jroedel@suse.de>2024-10-29 09:52:11 +0100
commit69e5a17511f654db0fe058d22719cef008c9faf1 (patch)
treec455a4c34acc4656b57b9187ab9dd98cbc243cf4
parentiommu/sysfs: constify the class struct (diff)
downloadwireguard-linux-69e5a17511f654db0fe058d22719cef008c9faf1.tar.xz
wireguard-linux-69e5a17511f654db0fe058d22719cef008c9faf1.zip
iommu: Remove useless flush from iommu_create_device_direct_mappings()
These days iommu_map() does not require external flushing, it always internally handles any required flushes. Since iommu_create_device_direct_mappings() only calls iommu_map(), remove the extra call. Since this is the last call site for iommu_flush_iotlb_all() remove it too. Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com> Link: https://lore.kernel.org/r/0-v1-bb6c694e1b07+a29e1-iommu_no_flush_all_jgg@nvidia.com Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to '')
-rw-r--r--drivers/iommu/iommu.c4
-rw-r--r--include/linux/iommu.h10
2 files changed, 0 insertions, 14 deletions
diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 4c29a4bc368b..e5d5b4fd322a 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -1141,10 +1141,6 @@ map_end:
}
}
-
- if (!list_empty(&mappings) && iommu_is_dma_domain(domain))
- iommu_flush_iotlb_all(domain);
-
out:
iommu_put_resv_regions(dev, &mappings);
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index 62d1b85c80d3..03f9fa833db9 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -852,12 +852,6 @@ void iommu_set_dma_strict(void);
extern int report_iommu_fault(struct iommu_domain *domain, struct device *dev,
unsigned long iova, int flags);
-static inline void iommu_flush_iotlb_all(struct iommu_domain *domain)
-{
- if (domain->ops->flush_iotlb_all)
- domain->ops->flush_iotlb_all(domain);
-}
-
static inline void iommu_iotlb_sync(struct iommu_domain *domain,
struct iommu_iotlb_gather *iotlb_gather)
{
@@ -1141,10 +1135,6 @@ static inline ssize_t iommu_map_sg(struct iommu_domain *domain,
return -ENODEV;
}
-static inline void iommu_flush_iotlb_all(struct iommu_domain *domain)
-{
-}
-
static inline void iommu_iotlb_sync(struct iommu_domain *domain,
struct iommu_iotlb_gather *iotlb_gather)
{