diff options
author | Omer Peleg <omer@cs.technion.ac.il> | 2016-04-20 10:33:57 +0200 |
---|---|---|
committer | David Woodhouse <David.Woodhouse@intel.com> | 2016-04-20 21:07:22 +0200 |
commit | 2aac630429d986a43ac59525a4cff47a624dc58e (patch) | |
tree | b007758a4aa3cf32fc5388037d3594ac169915ef /drivers/iommu/omap-iommu.c | |
parent | iommu/vt-d: avoid dev iotlb logic for domains with no dev iotlbs (diff) | |
download | linux-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