mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
iommu: Allow selecting page sizes per domain
Many IOMMUs support multiple page table formats, meaning that any given domain may only support a subset of the hardware page sizes presented in iommu_ops->pgsize_bitmap. There are also certain use-cases where the creator of a domain may want to control which page sizes are used, for example to force the use of hugepage mappings to reduce pagetable walk depth. To this end, add a per-domain pgsize_bitmap to represent the subset of page sizes actually in use, to make it possible for domains with different requirements to coexist. Signed-off-by: Will Deacon <[email protected]> [rm: hijacked and rebased original patch with new commit message] Signed-off-by: Robin Murphy <[email protected]> Acked-by: Will Deacon <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
This commit is contained in:
parent
53c92d7933
commit
d16e0faab9
5 changed files with 17 additions and 14 deletions
|
|
@ -407,7 +407,7 @@ static unsigned long vfio_pgsize_bitmap(struct vfio_iommu *iommu)
|
|||
|
||||
mutex_lock(&iommu->lock);
|
||||
list_for_each_entry(domain, &iommu->domain_list, next)
|
||||
bitmap &= domain->domain->ops->pgsize_bitmap;
|
||||
bitmap &= domain->domain->pgsize_bitmap;
|
||||
mutex_unlock(&iommu->lock);
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in a new issue