s390/mm,ptdump: hold memory hotplug lock while walking for kernel page table dump
authorHeiko Carstens <hca@linux.ibm.com>
Mon, 7 Sep 2020 15:11:36 +0000 (17:11 +0200)
committerVasily Gorbik <gor@linux.ibm.com>
Mon, 14 Sep 2020 09:38:34 +0000 (11:38 +0200)
This is the s390 variant of commit bf2b59f60ee1 ("arm64/mm: Hold
memory hotplug lock while walking for kernel page table dump").

Right now this doesn't fix any real bug, however as soon as kvm
patches get merged which make use of memory remove we might end up
dereferencing/accessing freed page tables.

Therefore fix this potential bug already now.

Reviewed-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/mm/dump_pagetables.c

index 93a29e2f13d4299e1b4fb7b8173db21bb6f7b28a..3c5e4055a3d23069b0ba38233143417926462826 100644 (file)
@@ -129,7 +129,9 @@ static int ptdump_show(struct seq_file *m, void *v)
                .marker = address_markers,
        };
 
+       get_online_mems();
        ptdump_walk_pgd(&st.ptdump, &init_mm, NULL);
+       put_online_mems();
        return 0;
 }
 DEFINE_SHOW_ATTRIBUTE(ptdump);