浏览代码

iommu: Fix trace_map() to report original iova and original size

iommu_map() calls trace_map() with iova and size. trace_map()
should report original iova and original size as opposed to
iova and size after they get changed during mapping. size is
always zero at the end of mapping which is useless to report
and iova as it gets incremented, it is not as useful as the
original iova. Change iommu_map() to call trace_map() to
report original iova and original size.

Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
Reported-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Shuah Khan 10 年之前
父节点
当前提交
860cd64d10
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      drivers/iommu/iommu.c

+ 1 - 1
drivers/iommu/iommu.c

@@ -1084,7 +1084,7 @@ int iommu_map(struct iommu_domain *domain, unsigned long iova,
 	if (ret)
 	if (ret)
 		iommu_unmap(domain, orig_iova, orig_size - size);
 		iommu_unmap(domain, orig_iova, orig_size - size);
 	else
 	else
-		trace_map(iova, paddr, size);
+		trace_map(orig_iova, paddr, orig_size);
 
 
 	return ret;
 	return ret;
 }
 }