On Fri, 13 Aug 2004, Martin Blapp wrote: > > Sleeping on "pseudofs" with the following non-sleepable locks held: > exclusive sleep mutex pseudofs_vncache r = 0 (0xc0903e40) locked _at_ > /usr/src/sys/fs/pseudofs/pseudofs_vncache.c > :226 > KDB: enter: witness_warn > [thread 100232] > Stopped at kdb_enter+0x30: leave Actually, that's not a panic -- your system can keep running, it's a warning (although you appear to have witness_kdb turned on, so you drop to the debugger and will need to type continue). This appears to be a bug in pseudofs due to calling vgone() while holding the pfs_vncache_mutex, as vgone() can sleep due to acquiring lockmgr locks. The fix is likely to make this looping even less efficient by dropping the mutex before calling vgone() on a vnode, and then restarting. I've CC'd DES because this is his baby. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert_at_fledge.watson.org Principal Research Scientist, McAfee Research > > db> where > kdb_enter(c080e20c,e5143af8,1,1,1) at kdb_enter+0x30 > witness_warn(5,c09087bc,c084de97,c084928d,1) at witness_warn+0x19b > msleep(c469cc08,c09087bc,50,c084928d,0) at msleep+0x5b > acquiredrain(c469cc04,1000040,c084c33b,e7,c3f7a160) at acquiredrain+0x9c > lockmgr(c469cc04,10007,c469cb58,c3f7a160,e5143ba0) at lockmgr+0x4d2 > vop_stdlock(e5143bf8,e5143c14,c068ce26,e5143bf8,1) at vop_stdlock+0x2c > vop_defaultop(e5143bf8,1,c062ccaf,c090f400,8) at vop_defaultop+0x18 > vclean(c469cb58,8,c3f7a160,c469cb58,c3f7a160) at vclean+0x50 > vgonel(c469cb58,c3f7a160,c0853c09,a43,0) at vgonel+0x5f > vgone(c469cb58,0,c0849739,e2,c35dc5a0) at vgone+0x42 > pfs_exit(0,c3f7da68,c084b8ec,cc,c0908260) at pfs_exit+0x74 > exit1(c3f7a160,0,e5143d40,c07e88eb,c3f7a160) at exit1+0x2ed > exit1(c3f7a160,e5143d14,4,c0851129,1) at exit1 > syscall(2f,2f,2f,bfbfe508,bfbfe468) at syscall+0x275 > Xint0x80_syscall() at Xint0x80_syscall+0x1f > --- syscall (1, FreeBSD ELF32, sys_exit), eip = 0x832d7c7, esp = 0xbfbfe434, ebp > = 0xbfbfe440 --- > _______________________________________________ > freebsd-current_at_freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org" >Received on Fri Aug 13 2004 - 13:21:45 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:06 UTC