Re: X86_64: 2.6.12-rc3 spontaneous reboot

From: Patrick McHardy
Date: Tue Apr 26 2005 - 15:30:10 EST

Andi Kleen wrote:
Ok thanks for the information. I will stare a bit at the patch.

It is very mysterious though. Even if the patch was somehow wrong
the worst thing that could happen is that you end up with interrupts
off when you shouldnt, and the NMI watchdog is very good at catching that.

I found that bringing back the cli in retint_swapgs fixed the problem,
so I traced back paths that could get there with interrupts enabled
and found int_restore_rest -> int_with_check -> retint_swapgs.
Adding a cli to int_restore_rest fixes the problem for me. I hope this

Index: arch/x86_64/kernel/entry.S
--- 585883113da6fe9142de95138c8ed8ca898a4ccc/arch/x86_64/kernel/entry.S (mode:100644 sha1:3233a15cc4e074c00b75569f21c2844ee280b214)
+++ uncommitted/arch/x86_64/kernel/entry.S (mode:100644)
@@ -307,6 +307,7 @@
1: movl $_TIF_NEED_RESCHED,%edi
+ cli
jmp int_with_check