aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-02-21 02:01:26 -0500
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-03-30 02:47:00 -0400
commit5caecb9432428241d0c641897f07ff4003f1b55f (patch)
tree34709dc13021ce869623036d2037fbecca62eff9
parentab2f75f0b760d2b0c9a875b669a1b51dce02c85a (diff)
xen: disable preempt for leave_lazy_mmu
xen_mc_flush() requires preemption to be disabled for its own sanity, so disable it while we're flushing. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
-rw-r--r--arch/x86/xen/mmu.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
index 3f2d0fe5e6a8..0e572380413b 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@ -1812,8 +1812,10 @@ __init void xen_post_allocator_init(void)
1812 1812
1813static void xen_leave_lazy_mmu(void) 1813static void xen_leave_lazy_mmu(void)
1814{ 1814{
1815 preempt_disable();
1815 xen_mc_flush(); 1816 xen_mc_flush();
1816 paravirt_leave_lazy_mmu(); 1817 paravirt_leave_lazy_mmu();
1818 preempt_enable();
1817} 1819}
1818 1820
1819const struct pv_mmu_ops xen_mmu_ops __initdata = { 1821const struct pv_mmu_ops xen_mmu_ops __initdata = {