Subject: Re: amd64: -current kernel hangs
To: Andrew Doran <ad@netbsd.org>
From: Kurt Schreiner <ks@ub.uni-mainz.de>
List: current-users
Date: 12/11/2007 12:37:09
On Mon, Dec 10, 2007 at 10:44:31PM +0100, Andrew Doran wrote:
> 
> On Mon, Dec 10, 2007 at 05:07:45PM +0100, Kurt Schreiner wrote:
> 
> > on my dual opteron system a kernel compiled from fresh -current
> > sources hangs during "build.sh ... -j8 ... distribution".
> > Breaking to "db>" yields:
> 
> I have been able to complete a couple of builds with GENERIC.MP, so I am not
> able to reproduce the problem.
Same here, seems to work now w/ both kernel and userland up to date...

> > Mon Dec 10 16:39:01 MET 2007
> >
> > NetBSD/amd64 (isunopti) (console)
> >
> > login: Stopped in pid 0.2 (system) at  netbsd:breakpoint+0x1:  ret
> > db{0}> bt
> > breakpoint() at netbsd:breakpoint+0x1
> > Xintr_ioapic_edge4() at netbsd:Xintr_ioapic_edge4+0xd8
> > --- interrupt ---
> > _kernel_lock() at netbsd:_kernel_lock+0xe3
> > intr_biglock_wrapper() at netbsd:intr_biglock_wrapper+0x18
> > Xintr_ioapic_level18() at netbsd:Xintr_ioapic_level18+0xe0
> > --- interrupt ---
> > _kernel_lock() at netbsd:_kernel_lock+0xe3
> > trap() at netbsd:trap+0x769
> 
> It seems to be deadlocked, waiting on the other CPU to release kernel_lock.
> Could you please switch onto the second CPU with "mach cpu 1" and get a
> backtrace from there?
Thats what I would have done if the machine didn't lock up hard after spitting
out the last line (trap() at ...) above...

Kurt