diff options
author | Nadav Amit <nadav.amit@gmail.com> | 2019-05-04 18:11:24 -0700 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2019-05-05 20:32:46 +0200 |
commit | caa841360134f863987f2d4f77b8dc2fbb7596f8 (patch) | |
tree | fc3f7b45f92fc38599a509945ee8b6970eb2c3d8 /include/asm-generic/pgtable.h | |
parent | 3950746d9d8ef981c1cb842384e0e86e8d1aad76 (diff) | |
download | linux-stable-caa841360134f863987f2d4f77b8dc2fbb7596f8.tar.gz linux-stable-caa841360134f863987f2d4f77b8dc2fbb7596f8.tar.bz2 linux-stable-caa841360134f863987f2d4f77b8dc2fbb7596f8.zip |
x86/mm: Initialize PGD cache during mm initialization
Poking-mm initialization might require to duplicate the PGD in early
stage. Initialize the PGD cache earlier to prevent boot failures.
Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Nadav Amit <namit@vmware.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Rick Edgecombe <rick.p.edgecombe@intel.com>
Cc: Rik van Riel <riel@surriel.com>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Thomas Gleixner <tglx@linutronix.de>
Fixes: 4fc19708b165 ("x86/alternatives: Initialize temporary mm for patching")
Link: http://lkml.kernel.org/r/20190505011124.39692-1-namit@vmware.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/asm-generic/pgtable.h')
-rw-r--r-- | include/asm-generic/pgtable.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/asm-generic/pgtable.h b/include/asm-generic/pgtable.h index fa782fba51ee..75d9d68a6de7 100644 --- a/include/asm-generic/pgtable.h +++ b/include/asm-generic/pgtable.h @@ -1126,6 +1126,8 @@ int phys_mem_access_prot_allowed(struct file *file, unsigned long pfn, static inline void init_espfix_bsp(void) { } #endif +extern void __init pgd_cache_init(void); + #ifndef __HAVE_ARCH_PFN_MODIFY_ALLOWED static inline bool pfn_modify_allowed(unsigned long pfn, pgprot_t prot) { |