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>
diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c
index 3f2d0fe..0e57238 100644
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@ -1812,8 +1812,10 @@
static void xen_leave_lazy_mmu(void)
{
+ preempt_disable();
xen_mc_flush();
paravirt_leave_lazy_mmu();
+ preempt_enable();
}
const struct pv_mmu_ops xen_mmu_ops __initdata = {