x86/mm/64: Tighten up vmalloc_fault() sanity checks on 5-level kernels
authorAndy Lutomirski <luto@kernel.org>
Thu, 25 Jan 2018 21:12:15 +0000 (13:12 -0800)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 26 Jan 2018 14:56:23 +0000 (15:56 +0100)
commit36b3a7726886f24c4209852a58e64435bde3af98
treeb7138f27cf51076b3d2c05ca9b6d268d5e3bce62
parent5beda7d54eafece4c974cfa9fbb9f60fb18fd20a
x86/mm/64: Tighten up vmalloc_fault() sanity checks on 5-level kernels

On a 5-level kernel, if a non-init mm has a top-level entry, it needs to
match init_mm's, but the vmalloc_fault() code skipped over the BUG_ON()
that would have checked it.

While we're at it, get rid of the rather confusing 4-level folded "pgd"
logic.

Cleans-up: b50858ce3e2a ("x86/mm/vmalloc: Add 5-level paging support")
Signed-off-by: Andy Lutomirski <luto@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Neil Berrington <neil.berrington@datacore.com>
Link: https://lkml.kernel.org/r/2ae598f8c279b0a29baf75df207e6f2fdddc0a1b.1516914529.git.luto@kernel.org
arch/x86/mm/fault.c