NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-amd64/40159: can't boot with multiple cpus anymore



The following reply was made to PR port-amd64/40159; it has been noted by GNATS.

From: Martin Husemann <martin%duskware.de@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: port-amd64/40159: can't boot with multiple cpus anymore
Date: Sun, 3 Jan 2010 20:30:11 +0100

 I enabled the kernel lock "spinout" panic always and caught it with this
 trace on cpu 1:
 
 _kernel_lock() at netbsd:_kernel_lock+0x142
 ip_slowtimo() at netbsd:ip_slowtimo+0x1d
 pfslowtimo() at netbsd:pfslowtimo+0x31
 callout_softclock() at netbsd:callout_softclock+0x205
 softint_dispatch() at netbsd:softint_dispatch+0xf7
 DDB lost frame for netbsd:Xsoftintr+0x4f, trying 0xffff80004c816d70
 Xsoftintr() at netbsd:Xsoftintr+0x4f
 --- interrupt ---
 0:
 
 "sh lock kernel_lock" claims this lwp has the kernel lock and it was
 last aquired in softint_dispatch.
 
 If I read the code correctly a softint handler does not realy know
 if it is invoked with kernel lock held or not, so aquiring that
 lock from a softint handler seems inherently dangerous - or am I missing
 something?
 
 Martin
 


Home | Main Index | Thread Index | Old Index