Messages in this thread | ![/](/images/icornerl.gif) | | Date | Tue, 1 Aug 2023 20:50:47 -0300 | From | Jason Gunthorpe <> | Subject | Re: [PATCH v3 5/8] iommu/arm-smmu-v3: Refactor write_ctx_desc |
| |
On Wed, Aug 02, 2023 at 02:35:22AM +0800, Michael Shavit wrote: > Update arm_smmu_write_ctx_desc and downstream functions to operate on > a master instead of an smmu domain. We expect arm_smmu_write_ctx_desc() > to only be called to write a CD entry into a CD table owned by the > master. Under the hood, arm_smmu_write_ctx_desc still fetches the CD > table from the domain that is attached to the master, but a subsequent > commit will move that table's ownership to the master. > > Note that this change isn't a nop refactor since SVA will call > arm_smmu_write_ctx_desc in a loop for every master the domain is > attached to despite the fact that they all share the same CD table. This > loop may look weird but becomes necessary when the CD table becomes > per-master in a subsequent commit. > > Signed-off-by: Michael Shavit <mshavit@google.com> > --- > > Changes in v3: > - Add a helper to write a CD to all masters that a domain is attached > to. > - Fixed an issue where an arm_smmu_write_ctx_desc error return wasn't > correctly handled by its caller. > > Changes in v2: > - minor style fixes > > Changes in v1: > - arm_smmu_write_ctx_desc now get's the CD table to write to from the > master parameter instead of a distinct parameter. This works well > because the CD table being written to should always be owned by the > master by the end of this series. This version no longer allows master > to be NULL. > > .../iommu/arm/arm-smmu-v3/arm-smmu-v3-sva.c | 31 +++++++++-- > drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 51 +++++++------------ > drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.h | 2 +- > 3 files changed, 46 insertions(+), 38 deletions(-)
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Jason
| ![\](/images/icornerr.gif) |