Fatal trap 30: reserved (unknown) fault

Kostik Belousov kostikbel at gmail.com
Sat Feb 21 08:08:44 PST 2009


On Sat, Feb 21, 2009 at 05:54:46PM +0200, Alexander Motin wrote:
> Christoph Mallon wrote:
> >Alexander Motin schrieb:
> >>About month ago after one of my amd64 8-CURRENT upgrade I have started 
> >>to see crashes with very strange message:
> >>Fatal trap 30: reserved (unknown) fault while in kernel mode
> >>
> >>Crash usually happens during some driver loading or unloading, for 
> >>example, snd_hda, which always worked fine before, or during ata 
> >>channel detach/attach which also causes device destruction/creation. 
> >>Backtrace of this state shows nothing interesting, for example idling 
> >>in acpi_cpu_c1() or just DELAY().
> >>
> >>Does anybody knows, for whom is this fault "reserved" and what does it 
> >>mean?
> >
> >Intel:
> >  20-31 -- Intel reserved. Do not use.
> >
> >This exception really should not happen. Maybe int 0x30 is executed, but 
> >this should not be the case either.
> 
> I have hit somewhere on web that traps may share vectors with interrupts 
> and this may cause problems. Can't it be some mishandled IRQ? What will 
> happen if some IRQ arrive after driver detach? How it will be handled?

30 is not CPU trap number, this is a freebsd trap number; see
i386/include/trap.h.

Actually, this is a crack from r187880. Trap 30 is reported when interrupt
is delivered for a vector that has no (non-default) handler installed.
Read apic_disable_vector() that sets irq handler for unhandled vector
to rsvd.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20090221/2eda9c84/attachment.pgp


More information about the freebsd-current mailing list