Subject: Re: -current kernels reboot w/double fault trap
To: Dave Huang <khym@azeotrope.org>
From: Frank van der Linden <fvdl@netbsd.org>
List: port-amd64
Date: 10/15/2006 18:18:48
Dave Huang wrote:
> Hi, I'm still having trouble booting a -current kernel with ACPI and
> MULTIPROCESSOR on my Tyan S2895:
> http://www.netbsd.org/cgi-bin/query-pr-single.pl?number=33927
>
> boot device: wd0
> root on wd0a dumps on wd0b
> root file system type: ffs
> cpu1: prelint0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
> cpu1: prelint1 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
> cpu1: timer0 200c0<vector=c0,delmode=0,dest=0> 0<target=0>
> cpu1: pcint0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
> cpu1: lint0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
> cpu1: lint1 400<vector=0,delmode=4,dest=0> 0<target=0>
> cpu1: err0 10000<vector=0,delmode=0,masked,dest=0> 0<target=0>
> cpu1: CPU 1 running
> kernel: double fault trap, code=0
> Stopped in pid 14.1 (pagedaemon) at	netbsd:Xintr_legacy7+0x52:	movq %rdi,0(%rsp)
> Xintr_legacy7() at netbsd:Xintr_legacy7+0x52
>
> I guess it's running out of stack for some reason, but I don't
> understand the CPU setup code at all :) Is there anything I can do to
> help figure out what's going on with this?
>   
Yeah, this looks like a kind of interrupt storm. This has been reported 
by others with S2895 boards as well.

One thing that obviously is wrong here, is that the legacy handlers 
(using i8254 handling code), should not be active, even if it is for 
unused interrupt vectors. I'll fix that, but it does not appear to be 
the main problem (Martin tested that change, and it did not fix the issue).

It looks like it is an interrupt storm issue, but I'm having a difficult 
time figuring out what it is.

- Frank