On 27/09/2019 14:00, Jan Beulich wrote:
On 27.09.2019 14:54, hong...@amazon.com wrote:
Pre-populate? There's some conceptional question then: When the
direct map is gone, are you mapping Xen heap pages into the place
they'd have lived at in the direct map? I'm not convinced that's
what we want. In fact I'm not convinced we'd want to retain the
distinction between Xen heap and domain heap then any further -
there's no reason anymore at that point (afaict).
Yes. My patches map xenheap pages to where they would have lived on the direct
map region, and unmap when xenheap pages are freed. The original proposal was
to use vmap() which we find difficult to implement.
- vmap takes an array of mfns. Mapping a large region require
allocating/freeing memory for a large array of mfns, unless we change or add
another vmap variant.
- va<->pa conversion. Mapping xenheap to direct map region makes all the
xenheap conversion macros still work. The vmap proposal needs to add another
field in page_info (breaking the power of 2) or to have a separate structure
somewhere else for va/pa conversion.
Of course, we could change all the code for xenheap to use the same domheap
mapping structure, which is probably another large patch series.
Hongyan
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel