[PATCH 0/4] Sort out SMMUv3 ATC invalidation and locking
will at kernel.org
Tue Aug 20 15:45:45 UTC 2019
This series arose from my attempt to remove the 'devices_lock' from the
->unmap() path. In actual fact, I think the current code in mainline
gets this wrong, so I've fixed up the ordering and then removed the lock.
Unfortunately, this relies on my deferred invalidation work so that the
invalidation range is propagated through to the sync callback:
At this point, if we decide to do anything for earier kernels, the easiest
thing is probably to nobble the ATS feature at probe time.
NOTE: this has not been tested, since I don't have access to any systems
capable of ATS!
Cc: Zhen Lei <thunder.leizhen at huawei.com>
Cc: Jean-Philippe Brucker <jean-philippe at linaro.org>
Cc: John Garry <john.garry at huawei.com>
Cc: Robin Murphy <robin.murphy at arm.com>
Will Deacon (4):
iommu/arm-smmu-v3: Document ordering guarantees of command insertion
iommu/arm-smmu-v3: Rework enabling/disabling of ATS for PCI masters
iommu/arm-smmu-v3: Fix ATC invalidation ordering wrt main TLBs
iommu/arm-smmu-v3: Avoid locking on invalidation path when not using
drivers/iommu/arm-smmu-v3.c | 105 ++++++++++++++++++++++++++++++++------------
1 file changed, 77 insertions(+), 28 deletions(-)
More information about the iommu