Date: Thu, 28 Feb 2008 14:12:22 +0300 From: Yuri Pankov <yuri.pankov@gmail.com> To: freebsd-hackers@freebsd.org Subject: pfind() in ithread handler Message-ID: <20080228111222.GE92245@mail.irbisnet.ru>
next in thread | raw e-mail | index | archive | help
Hi, I'm trying to understand the cause of following panic. panic: Trying sleep, but thread marked as sleeping prohibited cpuid = 0 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2a panic() at panic+0x17d sleepq_add() at sleepq_add+0x2e1 _sx_slock_hard() at _sx_slock_hard+0x15d _sx_slock() at _sx_slock+0xc1 pfind() at pfind+0x24 saa_intr() at saa_intr+0x313 ithread_loop() at ithread_loop+0xda fork_exit() at fork_exit+0x12a fork_trampoline() at fork_trampoline+0xe --- trap 0, rip = 0, rsp = 0xffffffffac3c0d30, rbp = 0 --- Can someone enlighten me on what is causing the panic and is it ok to use pfind() in interrupt handler (I have very limited understanding of kernel internals)? Code in question (taken from saa driver http://freebsd.ricin.com/ports/distfiles/kbtv-1.92.tbz) can be found at http://www.pastebin.ca/921830 TIA, Yuri
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080228111222.GE92245>