summaryrefslogtreecommitdiff
blob: f9a09e9d91f6985216c106957ead347007b7edab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Subject: Linux 2.6.22.6
From: Greg Kroah-Hartman <gregkh@suse.de>

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

Automatically created from "patches.kernel.org/patch-2.6.22.5-6" by xen-port-patches.py

Index: head-2007-09-25/arch/i386/mm/fault-xen.c
===================================================================
--- head-2007-09-25.orig/arch/i386/mm/fault-xen.c	2007-09-25 14:36:50.000000000 +0200
+++ head-2007-09-25/arch/i386/mm/fault-xen.c	2007-09-25 14:38:06.000000000 +0200
@@ -346,7 +346,7 @@ static inline pmd_t *vmalloc_sync_one(pg
 	pmd_k = pmd_offset(pud_k, address);
 	if (!pmd_present(*pmd_k))
 		return NULL;
-	if (!pmd_present(*pmd))
+	if (!pmd_present(*pmd)) {
 #ifndef CONFIG_XEN
 		set_pmd(pmd, *pmd_k);
 #else
@@ -356,7 +356,8 @@ static inline pmd_t *vmalloc_sync_one(pg
 		 */
 		set_pmd(pmd, __pmd(pmd_val(*pmd_k)));
 #endif
-	else
+		arch_flush_lazy_mmu_mode();
+	} else
 		BUG_ON(pmd_page(*pmd) != pmd_page(*pmd_k));
 	return pmd_k;
 }