Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Jan 2000 15:11:14 -0500
From:      "David E. Cross" <crossd@cs.rpi.edu>
To:        freebsd-hackers@freebsd.org
Cc:        crossd@cs.rpi.edu
Subject:   PANIC in 3.4-STABLE
Message-ID:  <200001162011.PAA50168@cs.rpi.edu>

next in thread | raw e-mail | index | archive | help
I have found a reproduceable panic in recent 3.4-STABLE images (past couple
of weeks).  I am not sure how to reproduce it thought ;)  The panic occurs
in the tty code it would appear.  It is often preceded by strange TTY
behavior (strange characters suddenly appearing in the output, a randomly
closed connection, etc).  The panic message is:
> Panic: clist reservation botch
> mp_lock = 00000001; cpuid = 1;
> lapic.id = 01000000
> boot() called on cpu#0

As you can see, I am running SMP.  I also am extensively using vinum
(everything except for / is running off of multiple vinum stripes).  The
other custom setup on this box is that I have no atkdb* in my kernel, 
everything is through USB (flags 0x100 to device sc0).  The machine also
has 256MB of ECC RAM.

>WILD GUESS FOLLOWS<  I was reading through the various device drivers and
TTY code, and I noticed that much in tty_subr.c needs to be called at
spltty().  In the atkbd drive this is taken care of automagically since
it is declared as "tty" in the config file.  This is *not* done in the case
of 'device ukbd0'.  Furthermore within the keyboard driver itself 'spltty()'
is never called, only 'splusb()' (<-- this may be enough?).  I am thinking
about adding some assert statements to the TTY code (or perhaps just a
printf()). and see what that turns up, but I do not know how to get the 
current spl().

This is not an easy bug to reproduce... In fact I cannot say 'do x, y, and z
to cause this panic.'  Yet it happens often enough to be consistent, part of
the reason I suspect a race condition.  Note that when the panic happens it
will not dump to a dumpdev, also 'control-alt-esc' with a USB keyboard seems
to not work right, the one time I tried I was unable to do anything.  I
seem to be able to get more panics/day by using my serial port at 115200,
heavily use the console, and be in X.

Any thoughts?

--
David Cross                               | email: crossd@cs.rpi.edu 
Acting Lab Director                       | NYSLP: FREEBSD
Systems Administrator/Research Programmer | Web: http://www.cs.rpi.edu/~crossd 
Rensselaer Polytechnic Institute,         | Ph: 518.276.2860            
Department of Computer Science            | Fax: 518.276.4033
I speak only for myself.                  | WinNT:Linux::Linux:FreeBSD


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200001162011.PAA50168>