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)Received on Thu Oct 18 2007 - 16:22:44 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:19 UTC