aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/mm/pti.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/arch/x86/mm/pti.c b/arch/x86/mm/pti.c
index 113ba14a03d8..5164c987b1f1 100644
--- a/arch/x86/mm/pti.c
+++ b/arch/x86/mm/pti.c
@@ -291,7 +291,7 @@ static void __init pti_setup_vsyscall(void) { }
291#endif 291#endif
292 292
293static void 293static void
294pti_clone_pmds(unsigned long start, unsigned long end, pmdval_t clear) 294pti_clone_pmds(unsigned long start, unsigned long end)
295{ 295{
296 unsigned long addr; 296 unsigned long addr;
297 297
@@ -352,7 +352,7 @@ pti_clone_pmds(unsigned long start, unsigned long end, pmdval_t clear)
352 * tables will share the last-level page tables of this 352 * tables will share the last-level page tables of this
353 * address range 353 * address range
354 */ 354 */
355 *target_pmd = pmd_clear_flags(*pmd, clear); 355 *target_pmd = *pmd;
356 } 356 }
357} 357}
358 358
@@ -398,7 +398,7 @@ static void __init pti_clone_user_shared(void)
398 start = CPU_ENTRY_AREA_BASE; 398 start = CPU_ENTRY_AREA_BASE;
399 end = start + (PAGE_SIZE * CPU_ENTRY_AREA_PAGES); 399 end = start + (PAGE_SIZE * CPU_ENTRY_AREA_PAGES);
400 400
401 pti_clone_pmds(start, end, 0); 401 pti_clone_pmds(start, end);
402} 402}
403#endif /* CONFIG_X86_64 */ 403#endif /* CONFIG_X86_64 */
404 404
@@ -418,8 +418,7 @@ static void __init pti_setup_espfix64(void)
418static void pti_clone_entry_text(void) 418static void pti_clone_entry_text(void)
419{ 419{
420 pti_clone_pmds((unsigned long) __entry_text_start, 420 pti_clone_pmds((unsigned long) __entry_text_start,
421 (unsigned long) __irqentry_text_end, 421 (unsigned long) __irqentry_text_end);
422 _PAGE_RW);
423} 422}
424 423
425/* 424/*
@@ -501,7 +500,7 @@ static void pti_clone_kernel_text(void)
501 * pti_set_kernel_image_nonglobal() did to clear the 500 * pti_set_kernel_image_nonglobal() did to clear the
502 * global bit. 501 * global bit.
503 */ 502 */
504 pti_clone_pmds(start, end_clone, _PAGE_RW); 503 pti_clone_pmds(start, end_clone);
505 504
506 /* 505 /*
507 * pti_clone_pmds() will set the global bit in any PMDs 506 * pti_clone_pmds() will set the global bit in any PMDs