s390/kasan: optimize kasan vmemmap allocation
authorVasily Gorbik <gor@linux.ibm.com>
Thu, 13 Sep 2018 14:09:52 +0000 (16:09 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Tue, 9 Oct 2018 09:21:34 +0000 (11:21 +0200)
Kasan implementation now supports memory hotplug operations. For that
reason regions of initially standby memory are now skipped from
shadow mapping and are mapped/unmapped dynamically upon bringing
memory online/offline.

Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/mm/kasan_init.c

index 6b0574340f7fdad341d730ed7dfea0b872c92b6d..5b253247bc9723d6e133c7b170d3cdfff11fac7b 100644 (file)
@@ -331,7 +331,8 @@ void __init kasan_early_init(void)
        kasan_early_vmemmap_populate(__sha(0), __sha(memsize), POPULATE_MAP);
        if (IS_ENABLED(CONFIG_MODULES))
                untracked_mem_end = vmax - MODULES_LEN;
-       kasan_early_vmemmap_populate(__sha(memsize), __sha(untracked_mem_end),
+       kasan_early_vmemmap_populate(__sha(max_physmem_end),
+                                    __sha(untracked_mem_end),
                                     POPULATE_ZERO_SHADOW);
        /* memory allocated for identity mapping structs will be freed later */
        pgalloc_freeable = pgalloc_pos;