aboutsummaryrefslogtreecommitdiff
path: root/include/linux/iova.h
AgeCommit message (Collapse)AuthorFilesLines
2015-01-19iommu: Make IOVA domain page size explicitRobin Murphy1-2/+33
Systems may contain heterogeneous IOMMUs supporting differing minimum page sizes, which may also not be common with the CPU page size. Thus it is practical to have an explicit notion of IOVA granularity to simplify handling of mapping and allocation constraints. As an initial step, move the IOVA page granularity from an implicit compile-time constant to a per-domain property so we can make use of it in IOVA domain context at runtime. To keep the abstraction tidy, extend the little API of inline iova_* helpers to parallel some of the equivalent PAGE_* macros. Signed-off-by: Robin Murphy <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
2015-01-19iommu: Make IOVA domain low limit flexibleRobin Murphy1-4/+3
To share the IOVA allocator with other architectures, it needs to accommodate more general aperture restrictions; move the lower limit from a compile-time constant to a runtime domain property to allow IOVA domains with different requirements to co-exist. Also reword the slightly unclear description of alloc_iova since we're touching it anyway. Signed-off-by: Robin Murphy <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
2015-01-19iommu: Consolidate IOVA allocator codeRobin Murphy1-0/+3
In order to share the IOVA allocator with other architectures, break the unnecssary dependency on the Intel IOMMU driver and move the remaining IOVA internals to iova.c Signed-off-by: Robin Murphy <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
2014-07-23iommu/vt-d: Introduce helper function iova_size() to improve code readabilityJiang Liu1-0/+5
Signed-off-by: Jiang Liu <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
2014-03-04iommu/vt-d: Update IOMMU state when memory hotplug happensJiang Liu1-0/+2
If static identity domain is created, IOMMU driver needs to update si_domain page table when memory hotplug event happens. Otherwise PCI device DMA operations can't access the hot-added memory regions. Signed-off-by: Jiang Liu <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
2009-07-15intel-iommu: Remove superfluous iova_alloc_lock from IOVA codeDavid Woodhouse1-1/+0
We only ever obtain this lock immediately before the iova_rbtree_lock, and release it immediately after the iova_rbtree_lock. So ditch it and just use iova_rbtree_lock. [v2: Remove the lockdep bits this time too] Signed-off-by: David Woodhouse <[email protected]>
2008-10-15VT-d: Changes to support KVMKay, Allen M1-0/+52
This patch extends the VT-d driver to support KVM [Ben: fixed memory pinning] [avi: move dma_remapping.h as well] Signed-off-by: Kay, Allen M <[email protected]> Signed-off-by: Weidong Han <[email protected]> Signed-off-by: Ben-Ami Yassour <[email protected]> Signed-off-by: Amit Shah <[email protected]> Acked-by: Mark Gross <[email protected]> Signed-off-by: Avi Kivity <[email protected]>