[PATCH v2 6/8] iommu/arm-smmu-v3: Populate the tlbi at the top of the call chain
Jason Gunthorpe
jgg at nvidia.com
Wed Jul 8 11:09:36 PDT 2026
On Tue, Jul 07, 2026 at 11:57:41AM +0000, Mostafa Saleh wrote:
> > + if (!tlbi->single.use_full_inv)
> > + arm_smmu_tlbi_calc_single(tlbi);
> >
> > /*
> > * An invalidation request must follow some IOPTE change and then load
>
> The rest of the comment still refers to the old name
> arm_smmu_domain_inv_range()
Got it!
> > static inline void arm_smmu_domain_inv(struct arm_smmu_domain *smmu_domain)
> > {
> > - arm_smmu_domain_inv_range(smmu_domain, 0, 0, 0, false);
> > + /* Prefilled for invalidate all */
> > + struct arm_smmu_tlbi tlbi = {
> > + .smmu_domain = smmu_domain,
> > + .single.use_full_inv = true,
> > + .range.use_full_inv = true,
>
> Those were introduced last patch, but I am wondering if use_full_inv
> should be a common field instead of having it in both single and range.
They are usually different values, this is the only place that sets
both the same. The conditions for RIL and single to switch to full
invalidation are not the same.
Thanks,
Jason
More information about the linux-arm-kernel
mailing list