virt inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I8UZSP CVE: NA
Signed-off-by: jiaqingtong jiaqingtong@huawei.com --- drivers/iommu/io-pgtable-arm.c | 2 +- drivers/iommu/iommu.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/iommu/io-pgtable-arm.c b/drivers/iommu/io-pgtable-arm.c index 404c87422338..4e5b1f4dd1a8 100644 --- a/drivers/iommu/io-pgtable-arm.c +++ b/drivers/iommu/io-pgtable-arm.c @@ -760,7 +760,7 @@ static size_t arm_lpae_do_split_blk(struct arm_lpae_io_pgtable *data, io_pgtable_tlb_flush_walk(&data->iop, iova, size, size); } /* Race does not exist */ - pte = arm_lpae_install_table(tablep, ptep, blk_pte, cfg); + pte = arm_lpae_install_table(tablep, ptep, blk_pte, data);
/* Have splited it into page? */ if (lvl == (ARM_LPAE_MAX_LEVELS - 1)) diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c index 40912af6c304..0ebea4808212 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -2789,7 +2789,7 @@ int iommu_switch_dirty_log(struct iommu_domain *domain, bool enable, enable ? "enable" : "disable", iova, size);
while (size) { - size_t pgsize = iommu_pgsize(domain, iova, size); + size_t pgsize = iommu_pgsize(domain, iova, iova, size, NULL);
flush = true; ret = ops->switch_dirty_log(domain, enable, iova, pgsize, prot); @@ -2845,7 +2845,7 @@ int iommu_sync_dirty_log(struct iommu_domain *domain, unsigned long iova, pr_debug("sync_dirty_log for: iova 0x%lx size 0x%zx\n", iova, size);
while (size) { - size_t pgsize = iommu_pgsize(domain, iova, size); + size_t pgsize = iommu_pgsize(domain, iova, iova, size, NULL);
ret = ops->sync_dirty_log(domain, iova, pgsize, bitmap, base_iova, bitmap_pgshift); @@ -2884,7 +2884,7 @@ static int __iommu_clear_dirty_log(struct iommu_domain *domain, pr_debug("clear_dirty_log for: iova 0x%lx size 0x%zx\n", iova, size);
while (size) { - size_t pgsize = iommu_pgsize(domain, iova, size); + size_t pgsize = iommu_pgsize(domain, iova, iova, size, NULL);
ret = ops->clear_dirty_log(domain, iova, pgsize, bitmap, base_iova, bitmap_pgshift);