In kernel code, if 'movable_node' specified, it will skip the mirror feature. So also skip mirror feature in KASLR.
Acked-by: Baoquan He <b...@redhat.com> Signed-off-by: Chao Fan <fanc.f...@cn.fujitsu.com> --- arch/x86/boot/compressed/kaslr.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/arch/x86/boot/compressed/kaslr.c b/arch/x86/boot/compressed/kaslr.c index 8703cc764306..e4b487f0b7af 100644 --- a/arch/x86/boot/compressed/kaslr.c +++ b/arch/x86/boot/compressed/kaslr.c @@ -692,6 +692,7 @@ static bool process_efi_entries(unsigned long minimum, unsigned long image_size) { struct efi_info *e = &boot_params->efi_info; + char *args = (char *)get_cmd_line_ptr(); bool efi_mirror_found = false; struct mem_vector region; efi_memory_desc_t *md; @@ -725,6 +726,12 @@ process_efi_entries(unsigned long minimum, unsigned long image_size) } } +#ifdef CONFIG_MEMORY_HOTPLUG + /* Skip memory mirror if 'movabale_node' specified */ + if (strstr(args, "movable_node")) + efi_mirror_found = false; +#endif + for (i = 0; i < nr_desc; i++) { md = efi_early_memdesc_ptr(pmap, e->efi_memdesc_size, i); -- 2.14.3