Today when a domain unpopulates the memory on runtime, they will always hand the memory over to the heap allocator. And it will be a problem if domain on static allocation.Since guest RAM for domain on static allocation is static memory, which is pre-reserved through domain congifuration, it shall never go back to heap.
This patch serie intends to fix this issue, by keeping page allocated and storing it in page list when unpopulating memory, and retrieving page from page list when populating memory. Penny Zheng (5): xen/arm: field "flags" to cover all internal CDF_XXX xen/arm: introduce CDF_staticmem xen/arm: unpopulate memory when domain on static allocation xen/arm: retrieve reserved pages on populate_physmap xen/arm: no need to store pages in resv_page_list when domain is directly mapped xen/arch/arm/domain.c | 3 ++- xen/arch/arm/domain_build.c | 5 +++- xen/arch/arm/include/asm/domain.h | 7 +++-- xen/common/domain.c | 4 +++ xen/common/memory.c | 45 ++++++++++++++++++++++++++++++- xen/include/xen/domain.h | 2 ++ xen/include/xen/sched.h | 6 +++++ 7 files changed, 67 insertions(+), 5 deletions(-) -- 2.25.1