7.0 CURRENT, need help with panic: Trying sleep, but thread marked as sleeping prohibited

Stefan Krüger stadtkind2 at gmx.de
Thu Oct 18 11:22:44 PDT 2007


Robert Watson wrote:
> The bug in ipfilter has to do with using a sleepable lock class in an 
> interrupt or a software interrupt thread.  This can lead to deadlocks, 
> although is relatively unlikely to do so, so is reported by invariants 
> testing as a fatal condition.  The panic won't turn up without 
> invariants enabled, and in practice the deadlock is quite unlikely, but 
> reflects a violation of the assumptions under which kernel 
> synchronization is designed to work. Switching to a non-sleepable lock 
> class doesn't provide an instant solution because the non-sleepable lock 
> will then be held over a potentially sleepable path for managing the 
> firewall from user space (if a copyin/copyout results in a page fault 
> that sleeps waiting on disk I/O, or worse, network I/O from 
> network-backed swap, which could lead directly to the deadlock).  
> Chances are, this is relatively easy to fix, but someone needs to do 
> that -- ideally someone very familiar with ipfilter. :-)

this someone could take a look at

http://www.freebsd.org/cgi/query-pr.cgi?pr=117182

(FreeBSD 7.0-PRERELEASE w/ ipfilter, sleeping thread panic)


More information about the freebsd-current mailing list