projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
f75d8e3
)
iommu/arm-smmu-v3: Don't issue CMD_SYNC for zero-length invalidations
author
Will Deacon
<will@kernel.org>
Wed, 21 Aug 2019 11:38:15 +0000
(12:38 +0100)
committer
Will Deacon
<will@kernel.org>
Wed, 21 Aug 2019 16:58:41 +0000
(17:58 +0100)
Calling arm_smmu_tlb_inv_range() with a size of zero, perhaps due to
an empty 'iommu_iotlb_gather' structure, should be a NOP. Elide the
CMD_SYNC when there is no invalidation to be performed.
Signed-off-by: Will Deacon <will@kernel.org>
drivers/iommu/arm-smmu-v3.c
patch
|
blob
|
history
diff --git
a/drivers/iommu/arm-smmu-v3.c
b/drivers/iommu/arm-smmu-v3.c
index 2be11a11bb8bf26d48a24a7464ff3538552d13fa..b7b3b0ff8ed6ad918c8265550506920604fd376a 100644
(file)
--- a/
drivers/iommu/arm-smmu-v3.c
+++ b/
drivers/iommu/arm-smmu-v3.c
@@
-1977,6
+1977,9
@@
static void arm_smmu_tlb_inv_range(unsigned long iova, size_t size,
},
};
+ if (!size)
+ return;
+
if (smmu_domain->stage == ARM_SMMU_DOMAIN_S1) {
cmd.opcode = CMDQ_OP_TLBI_NH_VA;
cmd.tlbi.asid = smmu_domain->s1_cfg.cd.asid;