As the code comment says, this will allow use of a 2Mb super page
mapping at the end of "low" memory.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Wei Liu <wl@xen.org>
/* Just check if RDM > our memory boundary. */
if (rdm_start > rdm_mem_boundary) {
+ /*
+ * For HAP guests round down to a 2Mb boundary to allow use
+ * of large page mappings.
+ */
+ if (libxl_defbool_val(d_config->c_info.hap)
+ && rdm_start > MB(2))
+ rdm_start &= ~(MB(2) - 1);
/*
* We will move downwards lowmem_end so we have to expand
* highmem_end.