On 2021/3/17 18:44, Yi Sun wrote: > On 21-03-10 17:06:09, Keqian Zhu wrote: >> From: jiangkunkun <jiangkun...@huawei.com> >> >> During dirty log tracking, user will try to retrieve dirty log from >> iommu if it supports hardware dirty log. >> >> This adds a new interface named sync_dirty_log in iommu layer and >> arm smmuv3 implements it, which scans leaf TTD and treats it's dirty >> if it's writable (As we just enable HTTU for stage1, so check whether >> AP[2] is not set). >> >> Co-developed-by: Keqian Zhu <zhukeqi...@huawei.com> >> Signed-off-by: Kunkun Jiang <jiangkun...@huawei.com> >> --- >> >> changelog: >> >> v2: >> - Add new sanity check in arm_smmu_sync_dirty_log(). (smmu_domain->stage != >> ARM_SMMU_DOMAIN_S1) >> - Document the purpose of flush_iotlb in arm_smmu_sync_dirty_log(). (Robin) >> >> --- >> drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 30 +++++++ >> drivers/iommu/io-pgtable-arm.c | 90 +++++++++++++++++++++ >> drivers/iommu/iommu.c | 38 +++++++++ >> include/linux/io-pgtable.h | 4 + >> include/linux/iommu.h | 18 +++++ >> 5 files changed, 180 insertions(+) >> > Please split iommu common interface out. Thanks! Yes, I will do it in v3.
> > [...] > >> diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c >> index 2a10294b62a3..44dfb78f9050 100644 >> --- a/drivers/iommu/iommu.c >> +++ b/drivers/iommu/iommu.c >> @@ -2850,6 +2850,44 @@ int iommu_stop_dirty_log(struct iommu_domain *domain, >> unsigned long iova, >> } >> EXPORT_SYMBOL_GPL(iommu_stop_dirty_log); >> >> +int iommu_sync_dirty_log(struct iommu_domain *domain, unsigned long iova, >> + size_t size, unsigned long *bitmap, >> + unsigned long base_iova, unsigned long bitmap_pgshift) > > One open question: shall we add PASID as one parameter to make iommu > know which address space to visit? > > For live migration, the pasid should not be necessary. But considering Sure, for live migration we just need to care about level/stage 2 mapping under nested mode. > future extension, it may be required. It sounds a good idea. I will consider this, thanks! > > BRs, > Yi Sun > . > Thanks, Keqian