Re: SMP turbulence: "kernel trap 12 with interrupts disabled"

From: Robert Watson <rwatson_at_freebsd.org>
Date: Sat, 26 Jun 2004 21:57:13 -0400 (EDT)
On Sun, 27 Jun 2004, Bruce Evans wrote:

> > I ran into this also -- I got a panic when I hit a key on the serial
> > console, as that caused the sio intr to preempt the ACPI idle loop and
> > resulted in unhappiness somehow.  I found that when I disabled the tunable
> > that turns off HTT, it worked fine.  Likewise, if I used 4BSD it was fine.
> > It's unclear to me what the cause is.
> 
> This looks like phk's roto-tilling of com->hotchar to
> com->tp->t_hotchar.  Hitting a key on a serial console that has not been
> opened from userland is the most deterministic way to demonstrate the
> brokenness of this change in practice.  com->tp is NULL until first
> open, and the null pointer access is especially easy to reach using a
> serial console since it is in the interrupt handler and interrupts are
> enabled before open on serial consoles to support trapping to the
> debugger on them.  You probably need the options that give this early
> enabling to see the bug.  They are: 

Ah, indeed, and with the ULE+HTT+machdep.hlt_logical_cpus bug, it would
hangs very early, opening up the window for the race.

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert_at_fledge.watson.org      Principal Research Scientist, McAfee Research


> 
> %%%
> #if defined(DDB) && (defined(BREAK_TO_DEBUGGER) || \
>     defined(ALT_BREAK_TO_DEBUGGER))
> %%%
> 
> Bruce
> 
Received on Sat Jun 26 2004 - 23:59:04 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:59 UTC