panic: rw_enter: solock locking against myself
Stopped at db_enter+0x1c: addq $0x8,%rsp
TID PID UID PRFLAGS PFLAGS CPU COMMAND
*370344 56681 32767 0x10 0x4000000 1K syz-executor.3
6403 72085 0 0x14000 0x200 0 zerothread
db_enter() at db_enter+0x1c sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff827dc239) at panic+0x17b sys/kern/subr_prf.c:198
rw_enter(fffffd806f0e13e0,1) at rw_enter+0x482 rw_enter_diag sys/kern/kern_rwlock.c:183 [inline]
rw_enter(fffffd806f0e13e0,1) at rw_enter+0x482 sys/kern/kern_rwlock.c:274
soisconnected(fffffd8069800050) at soisconnected+0x243 solock sys/kern/uipc_socket2.c:352 [inline]
soisconnected(fffffd8069800050) at soisconnected+0x243 sys/kern/uipc_socket2.c:111
unp_connect2(fffffd806f0e13d8,fffffd8069800050) at unp_connect2+0xca
unp_connect(fffffd806f0e13d8,fffffd806d212000,ffff8000212355e8) at unp_connect+0x46d sys/kern/uipc_usrreq.c:908
sys_connect(ffff8000212355e8,ffff8000212a1070,ffff8000212a10c0) at sys_connect+0x207 sys/kern/uipc_syscalls.c:422
syscall(ffff8000212a1140) at syscall+0x606 mi_syscall sys/sys/syscall_mi.h:110 [inline]
syscall(ffff8000212a1140) at syscall+0x606 sys/arch/amd64/amd64/trap.c:632
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xad453b621f0, count: 6
https://www.openbsd.org/ddb.html describes the minimum info required in bug
reports. Insufficient info makes it difficult to find and fix bugs.
ddb{1}>
ddb{1}> set $lines = 0
ddb{1}> set $maxwidth = 0
ddb{1}> show panic
*cpu1: rw_enter: solock locking against myself
ddb{1}> trace
db_enter() at db_enter+0x1c sys/arch/amd64/amd64/db_interface.c:437
panic(ffffffff827dc239) at panic+0x17b sys/kern/subr_prf.c:198
rw_enter(fffffd806f0e13e0,1) at rw_enter+0x482 rw_enter_diag sys/kern/kern_rwlock.c:183 [inline]
rw_enter(fffffd806f0e13e0,1) at rw_enter+0x482 sys/kern/kern_rwlock.c:274
soisconnected(fffffd8069800050) at soisconnected+0x243 solock sys/kern/uipc_socket2.c:352 [inline]
soisconnected(fffffd8069800050) at soisconnected+0x243 sys/kern/uipc_socket2.c:111
unp_connect2(fffffd806f0e13d8,fffffd8069800050) at unp_connect2+0xca
unp_connect(fffffd806f0e13d8,fffffd806d212000,ffff8000212355e8) at unp_connect+0x46d sys/kern/uipc_usrreq.c:908
sys_connect(ffff8000212355e8,ffff8000212a1070,ffff8000212a10c0) at sys_connect+0x207 sys/kern/uipc_syscalls.c:422
syscall(ffff8000212a1140) at syscall+0x606 mi_syscall sys/sys/syscall_mi.h:110 [inline]
syscall(ffff8000212a1140) at syscall+0x606 sys/arch/amd64/amd64/trap.c:632
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xad453b621f0, count: -9
ddb{1}> show registers
rdi 0
rsi 0x1
rbp 0xffff8000212a0ca0
rbx 0xffff800020d59b8f
rdx 0x3fd
rcx 0
rax 0x2f
r8 0x101010101010101
r9 0x8080808080808080
r10 0xaeb501b9592c2306
r11 0x24985fb9720657e
r12 0xffff800020d59990
r13 0
r14 0
r15 0x1
rip 0xffffffff82078dac db_enter+0x1c
cs 0x8
rflags 0x246
rsp 0xffff8000212a0c90
ss 0x10
db_enter+0x1c: addq $0x8,%rsp
ddb{1}> show proc
PROC (syz-executor.3) pid=370344 stat=onproc
flags process=10<SUGID> proc=4000000<THREAD>
pri=32, usrpri=86, nice=20
forw=0xffffffffffffffff, list=0xffff800021294858,0xffff8000211d98d8
process=0xffff8000ffff65c8 user=0xffff80002129c000, vmspace=0xfffffd806953e3c8
estcpu=36, cpticks=1, pctcpu=0.0
user=0, sys=1, intr=0
ddb{1}> ps
PID TID PPID UID S FLAGS WAIT COMMAND
26040 436876 56921 32767 3 0x90 nanoslp syz-executor.4
26040 382218 56921 32767 3 0x4000090 fsleep syz-executor.4
26040 257063 56921 32767 3 0x4000090 fsleep syz-executor.4
26040 457494 56921 32767 3 0x4000090 fsleep syz-executor.4
56681 232549 7329 32767 2 0x10 syz-executor.3
*56681 370344 7329 32767 7 0x4000010 syz-executor.3
56681 469444 7329 32767 3 0x4000090 fsleep syz-executor.3
56681 257411 7329 32767 3 0x4000090 fsleep syz-executor.3
66262 379399 75455 32767 2 0x10 syz-executor.5
66262 132088 75455 32767 3 0x4000090 fsleep syz-executor.5
66262 59980 75455 32767 3 0x4000090 fsleep syz-executor.5
66262 77473 75455 32767 3 0x4000090 fsleep syz-executor.5
72159 57104 90130 32767 3 0x90 nanoslp syz-executor.2
75455 433846 38792 32767 3 0x90 nanoslp syz-executor.5
56916 284737 73907 32767 3 0x10 biowait syz-executor.7
73907 339099 86172 0 3 0x82 wait syz-executor.7
38792 176053 86172 0 3 0x82 wait syz-executor.5
3784 62031 50908 32767 3 0x90 nanoslp syz-executor.1
90130 171273 86172 0 3 0x82 wait syz-executor.2
50908 420043 86172 0 3 0x82 wait syz-executor.1
56921 297752 35827 32767 3 0x90 nanoslp syz-executor.4
7329 182262 49874 32767 3 0x90 nanoslp syz-executor.3
35827 489863 86172 0 3 0x82 wait syz-executor.4
7774 218422 29817 32767 3 0x10 biowait syz-executor.6
49874 218223 86172 0 3 0x82 wait syz-executor.3
29817 346327 86172 0 3 0x82 wait syz-executor.6
30546 378753 74915 32767 3 0x90 nanoslp syz-executor.0
74915 86982 86172 0 3 0x82 wait syz-executor.0
86172 435716 15998 0 3 0x82 thrsleep syz-execprog
86172 520224 15998 0 3 0x4000082 nanoslp syz-execprog
86172 208459 15998 0 3 0x4000082 wait syz-execprog
86172 137504 15998 0 3 0x4000082 wait syz-execprog
86172 141933 15998 0 3 0x4000082 wait syz-execprog
86172 330591 15998 0 3 0x4000082 thrsleep syz-execprog
86172 295182 15998 0 3 0x4000082 wait syz-execprog
86172 124673 15998 0 3 0x4000082 wait syz-execprog
86172 307622 15998 0 3 0x4000082 wait syz-execprog
86172 191646 15998 0 3 0x4000082 thrsleep syz-execprog
86172 523761 15998 0 3 0x4000082 wait syz-execprog
86172 289126 15998 0 3 0x4000082 kqread syz-execprog
86172 297228 15998 0 3 0x4000082 wait syz-execprog
86172 279157 15998 0 3 0x4000082 thrsleep syz-execprog
86172 279958 15998 0 3 0x4000082 thrsleep syz-execprog
86172 145092 15998 0 3 0x4000082 thrsleep syz-execprog
15998 165891 74593 0 3 0x10008a sigsusp ksh
74593 147156 11346 0 3 0x9a kqread sshd
23146 352669 1 0 3 0x100083 ttyin getty
11346 15057 1 0 3 0x88 kqread sshd
99353 59547 9963 73 3 0x1100090 kqread syslogd
9963 102066 1 0 3 0x100082 netio syslogd
60598 222466 1 0 3 0x100080 kqread resolvd
92191 93159 28671 77 3 0x100092 kqread dhcpleased
70087 48024 28671 77 3 0x100092 kqread dhcpleased
28671 357189 1 0 3 0x80 kqread dhcpleased
26897 371929 0 0 3 0x14200 bored smr
72085 6403 0 0 7 0x14200 zerothread
78412 230325 0 0 3 0x14200 aiodoned aiodoned
7533 373109 0 0 3 0x14200 syncer update
20560 181823 0 0 3 0x14200 cleaner cleaner
36934 123221 0 0 3 0x14200 reaper reaper
36694 485937 0 0 3 0x14200 pgdaemon pagedaemon
82080 180703 0 0 3 0x14200 bored viomb
61626 213725 0 0 3 0x40014200 acpi0 acpi0
41225 397307 0 0 3 0x40014200 idle1
45648 289082 0 0 3 0x14200 bored softnet3
42655 519677 0 0 3 0x14200 bored softnet2
71229 92413 0 0 3 0x14200 bored softnet1
42931 327799 0 0 3 0x14200 bored softnet0
82618 30432 0 0 3 0x14200 bored systqmp
23301 380158 0 0 3 0x14200 bored systq
31919 437144 0 0 3 0x40014200 bored softclock
10000 390737 0 0 3 0x40014200 idle0
1 358327 0 0 3 0x82 wait init
0 0 -1 0 3 0x10200 scheduler swapper
ddb{1}> show all locks
Process 56681 (syz-executor.3) thread 0xffff8000212355e8 (370344)
exclusive rwlock solock r = 0 (0xfffffd806f0e13f0)
#0 witness_lock+0x44d
#1 unp_connect+0x395 sys/kern/uipc_usrreq.c:880
#2 sys_connect+0x207 sys/kern/uipc_syscalls.c:422
#3 syscall+0x606 mi_syscall sys/sys/syscall_mi.h:110 [inline]
#3 syscall+0x606 sys/arch/amd64/amd64/trap.c:632
#4 Xsyscall+0x128
exclusive rrwlock inode r = 0 (0xfffffd8072c7db38)
#0 witness_lock+0x44d
#1 rw_enter+0x3e5 sys/kern/kern_rwlock.c:310
#2 rrw_enter+0x8f sys/kern/kern_rwlock.c:465
#3 VOP_LOCK+0x8b sys/kern/vfs_vops.c:518
#4 vn_lock+0x84 sys/kern/vfs_vnops.c:564
#5 vget+0x200 sys/kern/vfs_subr.c:676
#6 ufs_ihashget+0x121 sys/ufs/ufs/ufs_ihash.c:119
#7 ffs_vget+0x7c sys/ufs/ffs/ffs_vfsops.c:1324
#8 ufs_lookup+0x122c sys/ufs/ufs/ufs_lookup.c:582
#9 VOP_LOOKUP+0x5c sys/kern/vfs_vops.c:85
#10 vfs_lookup+0x6f5 sys/kern/vfs_lookup.c:566
#11 namei+0x55a sys/kern/vfs_lookup.c:250
#12 unp_connect+0x1ce sys/kern/uipc_usrreq.c:841
#13 sys_connect+0x207 sys/kern/uipc_syscalls.c:422
#14 syscall+0x606 mi_syscall sys/sys/syscall_mi.h:110 [inline]
#14 syscall+0x606 sys/arch/amd64/amd64/trap.c:632
#15 Xsyscall+0x128
exclusive kernel_lock &kernel_lock r = 0 (0xffffffff82cd16d8)
#0 witness_lock+0x44d
#1 unp_connect+0x1c6 sys/kern/uipc_usrreq.c:841
#2 sys_connect+0x207 sys/kern/uipc_syscalls.c:422
#3 syscall+0x606 mi_syscall sys/sys/syscall_mi.h:110 [inline]
#3 syscall+0x606 sys/arch/amd64/amd64/trap.c:632
#4 Xsyscall+0x128
Process 56916 (syz-executor.7) thread 0xffff800021295080 (284737)
exclusive rrwlock inode r = 0 (0xfffffd8072c7d4d8)
#0 witness_lock+0x44d
#1 rw_enter+0x3e5 sys/kern/kern_rwlock.c:310
#2 rrw_enter+0x8f sys/kern/kern_rwlock.c:465
#3 VOP_LOCK+0x8b sys/kern/vfs_vops.c:518
#4 ufs_ihashins+0x46 sys/ufs/ufs/ufs_ihash.c:140
#5 ffs_vget+0x141 sys/ufs/ffs/ffs_vfsops.c:1353
#6 ffs_inode_alloc+0x1c2 sys/ufs/ffs/ffs_alloc.c:394
#7 ufs_mkdir+0xf8 sys/ufs/ufs/ufs_vnops.c:1149
#8 VOP_MKDIR+0xc3 sys/kern/vfs_vops.c:388
#9 domkdirat+0x125 sys/kern/vfs_syscalls.c:3074
#10 syscall+0x5e2 mi_syscall sys/sys/syscall_mi.h:110 [inline]
#10 syscall+0x5e2 sys/arch/amd64/amd64/trap.c:632
#11 Xsyscall+0x128
exclusive rrwlock inode r = 0 (0xfffffd8069a0e708)
#0 witness_lock+0x44d
#1 rw_enter+0x3e5 sys/kern/kern_rwlock.c:310
#2 rrw_enter+0x8f sys/kern/kern_rwlock.c:465
#3 VOP_LOCK+0x8b sys/kern/vfs_vops.c:518
#4 vn_lock+0x84 sys/kern/vfs_vnops.c:564
#5 vfs_lookup+0xd5 sys/kern/vfs_lookup.c:418
#6 namei+0x55a sys/kern/vfs_lookup.c:250
#7 domkdirat+0x79 sys/kern/vfs_syscalls.c:3059
#8 syscall+0x5e2 mi_syscall sys/sys/syscall_mi.h:110 [inline]
#8 syscall+0x5e2 sys/arch/amd64/amd64/trap.c:632
#9 Xsyscall+0x128
Process 7774 (syz-executor.6) thread 0xffff800021235330 (218422)
exclusive rrwlock inode r = 0 (0xfffffd8072c7d3c8)
#0 witness_lock+0x44d
#1 rw_enter+0x3e5 sys/kern/kern_rwlock.c:310
#2 rrw_enter+0x8f sys/kern/kern_rwlock.c:465
#3 VOP_LOCK+0x8b sys/kern/vfs_vops.c:518
#4 ufs_ihashins+0x46 sys/ufs/ufs/ufs_ihash.c:140
#5 ffs_vget+0x141 sys/ufs/ffs/ffs_vfsops.c:1353
#6 ffs_inode_alloc+0x1c2 sys/ufs/ffs/ffs_alloc.c:394
#7 ufs_mkdir+0xf8 sys/ufs/ufs/ufs_vnops.c:1149
#8 VOP_MKDIR+0xc3 sys/kern/vfs_vops.c:388
#9 domkdirat+0x125 sys/kern/vfs_syscalls.c:3074
#10 syscall+0x5e2 mi_syscall sys/sys/syscall_mi.h:110 [inline]
#10 syscall+0x5e2 sys/arch/amd64/amd64/trap.c:632
#11 Xsyscall+0x128
exclusive rrwlock inode r = 0 (0xfffffd8072c1a1b0)
#0 witness_lock+0x44d
#1 rw_enter+0x3e5 sys/kern/kern_rwlock.c:310
#2 rrw_enter+0x8f sys/kern/kern_rwlock.c:465
#3 VOP_LOCK+0x8b sys/kern/vfs_vops.c:518
#4 vn_lock+0x84 sys/kern/vfs_vnops.c:564
#5 vfs_lookup+0xd5 sys/kern/vfs_lookup.c:418
#6 namei+0x55a sys/kern/vfs_lookup.c:250
#7 domkdirat+0x79 sys/kern/vfs_syscalls.c:3059
#8 syscall+0x5e2 mi_syscall sys/sys/syscall_mi.h:110 [inline]
#8 syscall+0x5e2 sys/arch/amd64/amd64/trap.c:632
#9 Xsyscall+0x128
ddb{1}> show malloc
Type InUse MemUse HighUse Limit Requests Type Lim
devbuf 10171 6406K 6419K 78643K 11261 0
pcb 13 8K 8K 78643K 13 0
rtable 234 6K 6K 78643K 350 0
ifaddr 73 24K 24K 78643K 75 0
counters 60 35K 35K 78643K 60 0
ioctlops 0 0K 2K 78643K 29 0
mount 1 1K 1K 78643K 1 0
log 0 0K 0K 78643K 4 0
vnodes 1174 73K 74K 78643K 1187 0
UFS quota 1 32K 32K 78643K 1 0
UFS mount 5 36K 36K 78643K 5 0
shm 2 1K 1K 78643K 2 0
VM map 2 1K 1K 78643K 2 0
sem 2 0K 0K 78643K 2 0
dirhash 12 2K 2K 78643K 12 0
ACPI 1697 195K 286K 78643K 12548 0
file desc 21 77K 117K 78643K 16645 0
proc 56 78K 103K 78643K 471 0
NFS srvsock 1 0K 0K 78643K 1 0
NFS daemon 1 16K 16K 78643K 1 0
in_multi 99 6K 6K 78643K 99 0
ether_multi 1 0K 0K 78643K 1 0
ISOFS mount 1 32K 32K 78643K 1 0
MSDOSFS mount 1 16K 16K 78643K 1 0
ttys 25 122K 122K 78643K 25 0
exec 0 0K 1K 78643K 364 0
tdb 3 0K 0K 78643K 3 0
pagedep 1 8K 8K 78643K 1 0
inodedep 1 32K 32K 78643K 1 0
newblk 1 0K 0K 78643K 1 0
VM swap 8 62K 64K 78643K 10 0
UVM amap 280 77K 79K 78643K 206935 0
UVM aobj 3 2K 2K 78643K 3 0
memdesc 1 4K 4K 78643K 1 0
crypto data 1 1K 1K 78643K 1 0
NDP 11 0K 2K 78643K 27 0
temp 51 5850K 5914K 78643K 37012 0
kqueue 12 18K 18K 78643K 25 0
SYN cache 2 16K 16K 78643K 2 0
ddb{1}>