Re: crash in entry.S restore_all, 2.6.12-rc2, x86, PAGEALLOC

From: Andrew Morton
Date: Tue Apr 05 2005 - 02:04:12 EST


Ingo Molnar <mingo@xxxxxxx> wrote:
>
> the crashes below happen when PAGEALLOC is enabled. It's this
> instruction:
>
> movb OLDSS(%esp), %ah
>
> OLDSS is 0x38, esp is f4f83fc8, OLDSS(%esp) is thus f4f84000, which
> correctly creates the PAGEALLOC pagefault. esp is off by 4 bytes?
>
> it could be the ESP-16-bit-corruption patch causing this,

Do you have nmis enabled?



From: Akinobu Mita <amgta@xxxxxxxxxxxxxxx>

With nmi_watchdog=1, I got random Oopses (Unable to handle kernel paging
request, not by the NMI oopser) from many processes. It is not happend
with -rc1.

The following change fixes this problem.

Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

25-akpm/arch/i386/kernel/entry.S | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)

diff -puN arch/i386/kernel/entry.S~nmi_stack_correct-fix arch/i386/kernel/entry.S
--- 25/arch/i386/kernel/entry.S~nmi_stack_correct-fix 2005-04-05 00:02:48.000000000 -0700
+++ 25-akpm/arch/i386/kernel/entry.S 2005-04-05 00:02:48.000000000 -0700
@@ -550,7 +550,7 @@ nmi_stack_correct:
xorl %edx,%edx # zero error code
movl %esp,%eax # pt_regs pointer
call do_nmi
- jmp restore_all
+ jmp restore_nocheck

nmi_stack_fixup:
FIX_STACK(12,nmi_stack_correct, 1)
_

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/