summaryrefslogtreecommitdiffstats
path: root/drivers/iommu/omap-iommu.c
diff options
context:
space:
mode:
authorOmer Peleg <omer@cs.technion.ac.il>2016-04-20 10:33:57 +0200
committerDavid Woodhouse <David.Woodhouse@intel.com>2016-04-20 21:07:22 +0200
commit2aac630429d986a43ac59525a4cff47a624dc58e (patch)
treeb007758a4aa3cf32fc5388037d3594ac169915ef /drivers/iommu/omap-iommu.c
parentiommu/vt-d: avoid dev iotlb logic for domains with no dev iotlbs (diff)
downloadlinux-2aac630429d986a43ac59525a4cff47a624dc58e.tar.xz
linux-2aac630429d986a43ac59525a4cff47a624dc58e.zip
iommu/vt-d: change intel-iommu to use IOVA frame numbers
Make intel-iommu map/unmap/invalidate work with IOVA pfns instead of pointers to "struct iova". This avoids using the iova struct from the IOVA red-black tree and the resulting explicit find_iova() on unmap. This patch will allow us to cache IOVAs in the next patch, in order to avoid rbtree operations for the majority of map/unmap operations. Note: In eliminating the find_iova() operation, we have also eliminated the sanity check previously done in the unmap flow. Arguably, this was overhead that is better avoided in production code, but it could be brought back as a debug option for driver development. Signed-off-by: Omer Peleg <omer@cs.technion.ac.il> [mad@cs.technion.ac.il: rebased, fixed to not break iova api, and reworded the commit message] Signed-off-by: Adam Morrison <mad@cs.technion.ac.il> Reviewed-by: Shaohua Li <shli@fb.com> Reviewed-by: Ben Serebrin <serebrin@google.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Diffstat (limited to 'drivers/iommu/omap-iommu.c')
0 files changed, 0 insertions, 0 deletions