[lkml]   [2018]   [Feb]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH 00/16] kvm: arm64: Support for dynamic IPA size
I can comment on one part here:

On Thu, Feb 08, 2018 at 12:18:44PM +0100, Christoffer Dall wrote:
> Wasn't this also the decision taken for IOMMU page table allocation, and
> why was that the right approach for the IOMMU but not for KVM stage 2
> page tables? Is there room for reuse of the IOMMU page table allocation
> logic in KVM as well?

There were a few reasons we did this for IOMMU page tables:

* Ability to use different page size/VA bits/levels from the CPU
* Ability to support different page table formats (e.g. short descriptor)
* Ability to determine page table attributes at runtime
* Requirement to map/unmap in atomic context
* Ability to cope with non-coherent page table walkers
* Ability to create both stage-1 and stage-2 mappings
* Easier to hook in our own TLB invalidation routines
* Support for lockless concurrent map/unmap within confines of the DMA API


 \ /
  Last update: 2018-02-08 12:26    [W:0.177 / U:6.072 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site