x86/paravirt: make arch_flush_lazy_mmu/cpu disable preemption
authorJeremy Fitzhardinge <jeremy@goop.org>
Thu, 12 Feb 2009 18:02:56 +0000 (10:02 -0800)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 12 Feb 2009 22:11:58 +0000 (23:11 +0100)
commitd85cf93da66977dbc645352be1b2084a659d8a0b
treec8783022810c0ae48f5a5007ce9163c99e804d6f
parentbe03d9e8022030c16abf534e33e185bfc3d40eef
x86/paravirt: make arch_flush_lazy_mmu/cpu disable preemption

Impact: avoid access to percpu vars in preempible context

They are intended to be used whenever there's the possibility
that there's some stale state which is going to be overwritten
with a queued update, or to force a state change when we may be
in lazy mode.  Either way, we could end up calling it with
preemption enabled, so wrap the functions in their own little
preempt-disable section so they can be safely called in any
context (though preemption should never be enabled if we're actually
in a lazy state).

(Move out of line to avoid #include dependencies.)

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/include/asm/paravirt.h
arch/x86/kernel/paravirt.c