On 24/01/20 11:49, Andrew Jones wrote:
- /*
* Reserve twice the ammount of memory needed to map the test region and
* the page table / stacks region, at 4k, for page tables. Do the
* calculation with 4K page size: the smallest of all archs. (e.g., 64K
* page size guest will need even less memory for page tables).
*/
- pages += (2 * pages) / PTES_PER_4K_PT;
- pages += ((2 * vcpus * vcpu_memory_bytes) >> PAGE_SHIFT_4K) /
PTES_PER_4K_PT;
pages needs to be rounded up to the next multiple of 16 in order for this to work on aarch64 machines with 64k pages.
I think this is best done with a generic function that does the rounding and an arch-specific function that returns the page size. Can you send a patch to implement this?
Thanks,
Paolo