x86: only enable interrupts when kernel state has been set up
authorJeremy Fitzhardinge <jeremy@goop.org>
Mon, 24 Mar 2008 23:43:21 +0000 (16:43 -0700)
committerIngo Molnar <mingo@elte.hu>
Thu, 17 Apr 2008 15:41:29 +0000 (17:41 +0200)
commitd93c870bad38e8daaaf9f7e900a13431f24becbb
tree9fa51e506bf6cddf362b25dfb2048941c8f24e1e
parent687c80540975709844699d9a96070e2cf3bad39d
x86: only enable interrupts when kernel state has been set up

The sysenter path tries to enable interrupts immediately.  Unfortunately
this doesn't work in a paravirt environment, because not enough kernel
state has been set up at that point (namely, pointing %fs to the kernel
percpu data segment).  To fix this, defer ENABLE_INTERRUPTS until after
the kernel state has been set up.

Unfortunately this means that we're running with interrupts disabled
for a while without calling the IRQ tracing code, but that can't be
called without setting up %fs either.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/entry_32.S