aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/xen/mmu.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/xen/mmu.c')
-rw-r--r--arch/x86/xen/mmu.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
index a8a1a3d08d4d..8906cf0e536f 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@ -1457,8 +1457,10 @@ static int xen_pgd_alloc(struct mm_struct *mm)
1457 page->private = (unsigned long)user_pgd; 1457 page->private = (unsigned long)user_pgd;
1458 1458
1459 if (user_pgd != NULL) { 1459 if (user_pgd != NULL) {
1460#ifdef CONFIG_X86_VSYSCALL_EMULATION
1460 user_pgd[pgd_index(VSYSCALL_ADDR)] = 1461 user_pgd[pgd_index(VSYSCALL_ADDR)] =
1461 __pgd(__pa(level3_user_vsyscall) | _PAGE_TABLE); 1462 __pgd(__pa(level3_user_vsyscall) | _PAGE_TABLE);
1463#endif
1462 ret = 0; 1464 ret = 0;
1463 } 1465 }
1464 1466
@@ -2021,7 +2023,7 @@ static void xen_set_fixmap(unsigned idx, phys_addr_t phys, pgprot_t prot)
2021# ifdef CONFIG_HIGHMEM 2023# ifdef CONFIG_HIGHMEM
2022 case FIX_KMAP_BEGIN ... FIX_KMAP_END: 2024 case FIX_KMAP_BEGIN ... FIX_KMAP_END:
2023# endif 2025# endif
2024#else 2026#elif defined(CONFIG_X86_VSYSCALL_EMULATION)
2025 case VSYSCALL_PAGE: 2027 case VSYSCALL_PAGE:
2026#endif 2028#endif
2027 case FIX_TEXT_POKE0: 2029 case FIX_TEXT_POKE0:
@@ -2060,7 +2062,7 @@ static void xen_set_fixmap(unsigned idx, phys_addr_t phys, pgprot_t prot)
2060 2062
2061 __native_set_fixmap(idx, pte); 2063 __native_set_fixmap(idx, pte);
2062 2064
2063#ifdef CONFIG_X86_64 2065#ifdef CONFIG_X86_VSYSCALL_EMULATION
2064 /* Replicate changes to map the vsyscall page into the user 2066 /* Replicate changes to map the vsyscall page into the user
2065 pagetable vsyscall mapping. */ 2067 pagetable vsyscall mapping. */
2066 if (idx == VSYSCALL_PAGE) { 2068 if (idx == VSYSCALL_PAGE) {