diff options
author | Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> | 2009-02-20 23:01:26 -0800 |
---|---|---|
committer | Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> | 2009-03-29 23:47:00 -0700 |
commit | 5caecb9432428241d0c641897f07ff4003f1b55f (patch) | |
tree | 34709dc13021ce869623036d2037fbecca62eff9 /arch/x86/xen | |
parent | ab2f75f0b760d2b0c9a875b669a1b51dce02c85a (diff) | |
download | blackbird-op-linux-5caecb9432428241d0c641897f07ff4003f1b55f.tar.gz blackbird-op-linux-5caecb9432428241d0c641897f07ff4003f1b55f.zip |
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>
Diffstat (limited to 'arch/x86/xen')
-rw-r--r-- | arch/x86/xen/mmu.c | 2 |
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) 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 = { |