Running -current with the latest version of kern_descrip.c that also did not fix my previous sleep warnings and lock order reversals in this code. Kris panic: sleeping thread (pid 57200) owns a non-sleepable lock cpuid = 0 KDB: enter: panic [thread pid 57199 tid 100405 ] Stopped at kdb_enter+0x32: leave db> tr Tracing pid 57199 tid 100405 td 0xc8a31780 kdb_enter(c06e45e8,0,c06e776a,f16dcb7c,c8a31780) at kdb_enter+0x32 panic(c06e776a,df70,c06e7658,a4,c8a31780) at panic+0x1b0 turnstile_wait(c0740a40,c578f480,c06e3a2c,21e,c0740a40) at turnstile_wait+0x574 _mtx_lock_sleep(c0740a40,c8a31780,0,c06e16af,670) at _mtx_lock_sleep+0xc2 _mtx_lock_flags(c0740a40,0,c06e16af,670,c06e7cdf) at _mtx_lock_flags+0xb0 fdfree(c8a31780,8,c06e1d54,e6,252) at fdfree+0x35c exit1(c8a31780,4000,f16dcd40,c06a6fc8,c8a31780) at exit1+0x32a sys_exit(c8a31780,f16dcd14,4,0,1) at sys_exit+0x1d syscall(2f,2f,2f,bfbfe584,4) at syscall+0x13b Xint0x80_syscall() at Xint0x80_syscall+0x1f --- syscall (1, FreeBSD ELF32, sys_exit), eip = 0x280bf373, esp = 0xbfbfe4bc, ebp = 0xbfbfe4d8 --- [Hmm, that's not process 57200..] db> tr 57200 Tracing pid 57200 tid 100163 td 0xc578f480 sched_switch(c578f480,0,1,11e,c35984d3) at sched_switch+0xef mi_switch(1,0,c06e70b7,1ab,1) at mi_switch+0x1c2 sleepq_switch(c06e3a2c,18e,1,1,eecbdc50) at sleepq_switch+0x10a sleepq_wait(c5d3b24c,0,c06e4d0f,da,0) at sleepq_wait+0x1a msleep(c5d3b24c,c5d3b228,64,c06e0dc6,0) at msleep+0x4e4 checkdirs(c5853000,eecbdca4,c578f480,c578f480,0) at checkdirs+0xe0 dounmount(c5853000,8080000,c578f480,43a,611ffa4) at dounmount+0x3fa unmount(c578f480,eecbdd14,8,3ff,2) at unmount+0x1f4 syscall(2f,2f,2f,804a618,bfbfe749) at syscall+0x13b Xint0x80_syscall() at Xint0x80_syscall+0x1f --- syscall (22, FreeBSD ELF32, unmount), eip = 0x280c5a63, esp = 0xbfbfe4dc, ebp = 0xbfbfe598 --- db> show locks exclusive sleep mutex Giant r = 0 (0xc07412e0) locked _at_ kern/vfs_vnops.c:882 db> show pcpu cpuid = 0 curthread = 0xc8a31780: pid 57199 "mkdir" curpcb = 0xf16dcda0 fpcurthread = none idlethread = 0xc563f780: pid 12 "idle: cpu0" APIC ID = 0 currentldt = 0x30 spin locks held:
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:23 UTC