witness: lock order reversal: 1st 0xfffffd807e782828 fdlock (&newfdp->fd_fd.fd_lock) 2nd 0xfffffd80669a73d0 inode (&ip->i_lock) lock order data w2 -> w1 missing lock order data w1 -> w2 missing Stopped at db_enter+0x18: addq $0x8,%rsp ddb{0}> ddb{0}> set $lines = 0 ddb{0}> set $maxwidth = 0 ddb{0}> show panic the kernel did not panic ddb{0}> trace db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398 witness_checkorder(fffffd80669a73d0,9,0) at witness_checkorder+0x108b rw_enter(fffffd80669a73c0,1) at rw_enter+0xd4 rrw_enter(fffffd80669a73c0,1) at rrw_enter+0x88 sys/kern/kern_rwlock.c:461 VOP_LOCK(fffffd80679c2870,2001) at VOP_LOCK+0x87 sys/kern/vfs_vops.c:614 vn_lock(fffffd80679c2870,2001) at vn_lock+0x84 sys/kern/vfs_vnops.c:579 vget(fffffd80679c2870,2001) at vget+0x1f7 sys/kern/vfs_subr.c:676 ktrwriteraw(ffff800021272fc0,fffffd80679c2870,fffffd807f7d8a80,ffff8000234c17f0,ffff8000234c17d0) at ktrwriteraw+0x138 sys/kern/kern_ktrace.c:659 ktrstruct(ffff800021272fc0,ffffffff823b8e5c,ffff8000234c18d8,8) at ktrstruct+0x169 ktrwrite2 sys/kern/kern_ktrace.c:627 [inline] ktrstruct(ffff800021272fc0,ffffffff823b8e5c,ffff8000234c18d8,8) at ktrstruct+0x169 sys/kern/kern_ktrace.c:311 sys_socketpair(ffff800021272fc0,ffff8000234c1948,ffff8000234c1990) at sys_socketpair+0x3ed sys/kern/uipc_syscalls.c:470 syscall(ffff8000234c1a10) at syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] syscall(ffff8000234c1a10) at syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0x350454b4fe0, count: -12 ddb{0}> show registers rdi 0xffff8000234c2000 rsi 0xbc16 __ALIGN_SIZE+0xac16 rbp 0xffff8000234c1400 rbx 0x3 rdx 0xffff8000234c2000 rcx 0xbc15 __ALIGN_SIZE+0xac15 rax 0xffffffff81b31cc7 db_enter+0x17 r8 0xffffffff81e60a01 witness_checkorder+0x1061 r9 0x5 r10 0x632624830509ceb7 r11 0x29b03474fd88b7bf r12 0 r13 0xfffffd80669a73d0 r14 0 r15 0xfffffd8002cf8740 rip 0xffffffff81b31cc8 db_enter+0x18 cs 0x8 rflags 0x246 rsp 0xffff8000234c13f0 ss 0x10 db_enter+0x18: addq $0x8,%rsp ddb{0}> show proc PROC (syz-executor.1) pid=282884 stat=onproc flags process=0 proc=4000001 pri=32, usrpri=76, nice=20 forw=0xffffffffffffffff, list=0xffff800021272a80,0xffffffff827e6d38 process=0xffff800021226a40 user=0xffff8000234bc000, vmspace=0xfffffd80084d6b80 estcpu=36, cpticks=0, pctcpu=0.0 user=0, sys=0, intr=0 ddb{0}> ps PID TID PPID UID S FLAGS WAIT COMMAND 50279 338775 61181 0 7 0 syz-executor.1 *50279 282884 61181 0 7 0x4000001 syz-executor.1 61181 367531 24656 0 3 0x82 nanoslp syz-executor.1 65227 18862 24656 0 3 0x2 biowait syz-executor.0 24656 129090 33299 0 3 0x82 thrsleep syz-fuzzer 24656 21030 33299 0 3 0x4000082 nanoslp syz-fuzzer 24656 489520 33299 0 3 0x4000082 thrsleep syz-fuzzer 24656 246230 33299 0 3 0x4000082 thrsleep syz-fuzzer 24656 122241 33299 0 3 0x4000082 kqread syz-fuzzer 24656 311167 33299 0 3 0x4000082 thrsleep syz-fuzzer 24656 311557 33299 0 3 0x4000082 thrsleep syz-fuzzer 24656 15709 33299 0 3 0x4000082 nanoslp syz-fuzzer 33299 387803 23338 0 3 0x10008a sigsusp ksh 23338 70940 18064 0 3 0x92 select sshd 71789 280857 1 0 3 0x100083 ttyin getty 18064 134639 1 0 3 0x80 select sshd 11434 453180 33807 74 3 0x100092 bpf pflogd 33807 317205 1 0 3 0x80 netio pflogd 51917 359490 33924 73 3 0x100090 kqread syslogd 33924 283302 1 0 3 0x100082 netio syslogd 3733 33805 1 77 3 0x100090 poll dhclient 90976 99595 1 0 3 0x80 poll dhclient 64717 38961 0 0 3 0x14200 bored smr 9872 301434 0 0 3 0x14200 pgzero zerothread 11411 436752 0 0 3 0x14200 aiodoned aiodoned 67481 152148 0 0 3 0x14200 syncer update 94642 99685 0 0 3 0x14200 cleaner cleaner 73961 441687 0 0 3 0x14200 reaper reaper 43351 444434 0 0 3 0x14200 pgdaemon pagedaemon 75139 430435 0 0 3 0x14200 bored crynlk 65591 341872 0 0 3 0x14200 bored crypto 10230 492112 0 0 3 0x14200 bored viomb 16410 390524 0 0 3 0x40014200 acpi0 acpi0 76290 405695 0 0 3 0x40014200 idle1 81605 361064 0 0 3 0x14200 bored softnet 69882 123872 0 0 3 0x14200 bored systqmp 98171 523804 0 0 3 0x14200 bored systq 72293 77854 0 0 3 0x40014200 bored softclock 77344 403851 0 0 3 0x40014200 idle0 1 313421 0 0 3 0x82 wait init 0 0 -1 0 3 0x10200 scheduler swapper ddb{0}> show all locks Process 50279 (syz-executor.1) thread 0xffff800021272fc0 (282884) exclusive kernel_lock &kernel_lock r = 0 (0xffffffff827a2c08) #0 witness_lock+0x4b0 stacktrace_save sys/sys/stacktrace.h:36 [inline] #0 witness_lock+0x4b0 sys/kern/subr_witness.c:1182 #1 ktrstruct+0xee #2 sys_socketpair+0x3ed sys/kern/uipc_syscalls.c:470 #3 syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] #3 syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 #4 Xsyscall+0x128 exclusive rwlock fdlock r = 0 (0xfffffd807e782828) #0 witness_lock+0x4b0 stacktrace_save sys/sys/stacktrace.h:36 [inline] #0 witness_lock+0x4b0 sys/kern/subr_witness.c:1182 #1 sys_socketpair+0x219 #2 syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] #2 syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 #3 Xsyscall+0x128 Process 65227 (syz-executor.0) thread 0xffff800021273ce0 (18862) exclusive rrwlock inode r = 0 (0xfffffd80669a70a0) #0 witness_lock+0x4b0 stacktrace_save sys/sys/stacktrace.h:36 [inline] #0 witness_lock+0x4b0 sys/kern/subr_witness.c:1182 #1 rw_enter+0x416 sys/kern/kern_rwlock.c:310 #2 rrw_enter+0x88 sys/kern/kern_rwlock.c:461 #3 VOP_LOCK+0x87 sys/kern/vfs_vops.c:614 #4 vn_lock+0x84 sys/kern/vfs_vnops.c:579 #5 vget+0x1f7 sys/kern/vfs_subr.c:676 #6 ufs_ihashget+0x121 sys/ufs/ufs/ufs_ihash.c:119 #7 ffs_vget+0x6b sys/ufs/ffs/ffs_vfsops.c:1321 #8 ufs_lookup+0x151d sys/ufs/ufs/ufs_lookup.c:487 #9 VOP_LOOKUP+0x5b sys/kern/vfs_vops.c:88 #10 vfs_lookup+0x708 sys/kern/vfs_lookup.c:562 #11 namei+0x58a sys/kern/vfs_lookup.c:245 #12 dounlinkat+0x99 sys/kern/vfs_syscalls.c:1859 #13 syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] #13 syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 #14 Xsyscall+0x128 exclusive rrwlock inode r = 0 (0xfffffd806ac36a28) #0 witness_lock+0x4b0 stacktrace_save sys/sys/stacktrace.h:36 [inline] #0 witness_lock+0x4b0 sys/kern/subr_witness.c:1182 #1 rw_enter+0x416 sys/kern/kern_rwlock.c:310 #2 rrw_enter+0x88 sys/kern/kern_rwlock.c:461 #3 VOP_LOCK+0x87 sys/kern/vfs_vops.c:614 #4 vn_lock+0x84 sys/kern/vfs_vnops.c:579 #5 vfs_lookup+0xe6 sys/kern/vfs_lookup.c:413 #6 namei+0x58a sys/kern/vfs_lookup.c:245 #7 dounlinkat+0x99 sys/kern/vfs_syscalls.c:1859 #8 syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] #8 syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 #9 Xsyscall+0x128 ddb{0}> show malloc Type InUse MemUse HighUse Limit Requests Type Lim devbuf 10129 6484K 7126K 78643K 12473 0 pcb 13 8K 8K 78643K 65 0 rtable 105 3K 3K 78643K 227 0 ifaddr 49 11K 11K 78643K 66 0 sysctl 2 0K 0K 78643K 2 0 counters 44 34K 34K 78643K 50 0 ioctlops 0 0K 4K 78643K 1528 0 iov 0 0K 12K 78643K 52 0 mount 1 1K 1K 78643K 1 0 log 0 0K 0K 78643K 1 0 vnodes 1221 77K 77K 78643K 1637 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 9 0K 0K 78643K 9 0 dirhash 12 2K 2K 78643K 12 0 ACPI 1697 195K 286K 78643K 12598 0 file desc 5 13K 25K 78643K 1320 0 sigio 0 0K 0K 78643K 48 0 proc 61 63K 95K 78643K 539 0 subproc 32 2K 2K 78643K 34 0 NFS srvsock 1 0K 0K 78643K 1 0 NFS daemon 1 16K 16K 78643K 1 0 ip_moptions 0 0K 0K 78643K 80 0 in_multi 33 2K 2K 78643K 145 0 ether_multi 1 0K 0K 78643K 5 0 mrt 0 0K 0K 78643K 8 0 ISOFS mount 1 32K 32K 78643K 1 0 MSDOSFS mount 1 16K 16K 78643K 1 0 ttys 43 201K 201K 78643K 43 0 exec 0 0K 2K 78643K 364 0 pagedep 1 8K 8K 78643K 1 0 inodedep 1 32K 32K 78643K 1 0 newblk 1 0K 0K 78643K 1 0 VM swap 7 26K 26K 78643K 7 0 UVM amap 170 25K 25K 78643K 17279 0 UVM aobj 44 2K 2K 78643K 44 0 memdesc 1 4K 4K 78643K 1 0 crypto data 1 1K 1K 78643K 1 0 ip6_options 0 0K 0K 78643K 56 0 NDP 7 0K 0K 78643K 14 0 temp 111 3982K 4046K 78643K 5491 0 kqueue 3 4K 8K 78643K 38 0 SYN cache 2 16K 16K 78643K 2 0 ddb{0}> show all pools Name Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle plcache 128 20 0 0 1 0 1 1 0 8 0 rtpcb 120 40 0 38 1 0 1 1 0 8 0 rtentry 112 49 0 5 2 0 2 2 0 8 0 unpcb 120 510 0 498 1 0 1 1 0 8 0 syncache 296 45 0 45 2 2 0 1 0 8 0 tcpqe 32 79 0 79 2 2 0 1 0 8 0 tcpcb 736 276 0 272 4 3 1 3 0 8 0 arp 120 6 0 0 1 0 1 1 0 8 0 inpcb 304 640 0 634 1 0 1 1 0 8 0 rttmr 72 4 0 4 1 1 0 1 0 8 0 nd6 48 6 0 0 1 0 1 1 0 8 0 pkpcb 40 5 0 5 1 1 0 1 0 8 0 kcovpl 48 2 0 0 1 0 1 1 0 8 0 pfosfp 40 1428 0 1005 5 0 5 5 0 8 0 pfosfpen 112 1428 0 714 21 0 21 21 0 8 0 pfstitem 24 12 0 10 1 0 1 1 0 8 0 pfstkey 112 12 0 10 1 0 1 1 0 8 0 pfstate 320 12 0 10 1 0 1 1 0 8 0 pfrule 1360 65 0 59 2 1 1 2 0 8 0 art_heap8 4096 1 0 0 1 0 1 1 0 8 0 art_heap4 256 188 0 0 12 0 12 12 0 8 0 art_table 32 189 0 0 2 0 2 2 0 8 0 art_node 16 48 0 8 1 0 1 1 0 8 0 sysvmsgpl 40 18 0 8 1 0 1 1 0 8 0 semupl 112 1 0 1 1 1 0 1 0 8 0 semapl 112 7 0 0 1 0 1 1 0 8 0 shmpl 112 41 0 0 2 0 2 2 0 8 0 dirhash 1024 17 0 0 3 0 3 3 0 8 0 dino2pl 256 3121 0 1712 89 0 89 89 0 8 0 ffsino 272 3121 0 1712 95 0 95 95 0 8 0 nchpl 144 4814 0 3206 60 0 60 60 0 8 0 uvmvnodes 72 3438 0 0 63 0 63 63 0 8 0 vnodes 224 3438 0 0 203 0 203 203 0 8 0 namei 1024 12214 0 12214 1 0 1 1 0 8 1 percpumem 16 36 0 3 1 0 1 1 0 8 0 scxspl 216 13752 0 13751 9 8 1 8 0 8 0 plimitpl 152 36 0 28 1 0 1 1 0 8 0 sigapl 424 1535 0 1503 4 0 4 4 0 8 0 futexpl 56 11689 0 11689 1 0 1 1 0 8 1 knotepl 112 97 0 77 1 0 1 1 0 8 0 kqueuepl 168 631 0 629 1 0 1 1 0 8 0 pipepl 336 140 0 129 3 2 1 2 0 8 0 fdescpl 496 1519 0 1503 3 0 3 3 0 8 0 filepl 152 5827 0 5722 5 0 5 5 0 8 0 lockfpl 104 111 0 110 1 0 1 1 0 8 0 lockfspl 48 37 0 36 1 0 1 1 0 8 0 sessionpl 144 18 0 7 1 0 1 1 0 8 0 pgrppl 48 18 0 7 1 0 1 1 0 8 0 ucredpl 96 577 0 564 1 0 1 1 0 8 0 zombiepl 144 1503 0 1503 1 0 1 1 0 8 1 processpl 1080 1535 0 1503 3 0 3 3 0 8 0 procpl 672 3117 0 3077 4 0 4 4 0 8 0 sockpl 480 1195 0 1175 5 1 4 4 0 8 0 mcl64k 65536 18 0 0 3 0 3 3 0 8 0 mcl16k 16384 2 0 0 1 0 1 1 0 8 0 mcl12k 12288 12 0 0 2 0 2 2 0 8 0 mcl9k 9216 5 0 0 1 0 1 1 0 8 0 mcl8k 8192 10 0 0 2 0 2 2 0 8 0 mcl4k 4096 6 0 0 1 0 1 1 0 8 0 mcl2k 2048 169 0 0 16 0 16 16 0 8 0 mtagpl 96 99 0 0 3 0 3 3 0 8 0 mbufpl 256 483 0 0 29 0 29 29 0 8 0 bufpl 280 4787 0 155 331 0 331 331 0 8 0 anonpl 24 367344 0 361023 44 3 41 41 0 186 0 amapchunkpl 152 40386 0 40020 19 3 16 16 0 158 0 amappl16 200 2582 0 2417 11 1 10 10 0 8 1 amappl15 192 61 0 56 1 0 1 1 0 8 0 amappl14 184 4 0 3 1 0 1 1 0 8 0 amappl13 176 674 0 670 1 0 1 1 0 8 0 amappl12 168 34 0 27 1 0 1 1 0 8 0 amappl11 160 708 0 695 1 0 1 1 0 8 0 amappl10 152 27 0 21 1 0 1 1 0 8 0 amappl9 144 290 0 289 1 0 1 1 0 8 0 amappl8 136 321 0 285 2 0 2 2 0 8 0 amappl7 128 57 0 47 1 0 1 1 0 8 0 amappl6 120 108 0 92 1 0 1 1 0 8 0 amappl5 112 790 0 778 1 0 1 1 0 8 0 amappl4 104 1187 0 1158 1 0 1 1 0 8 0 amappl3 96 1385 0 1377 1 0 1 1 0 8 0 amappl2 88 474 0 428 2 0 2 2 0 8 0 amappl1 80 28724 0 28307 13 3 10 12 0 8 0 amappl 88 16888 0 16772 3 0 3 3 0 92 0 dma4096 4096 1 0 1 1 1 0 1 0 8 0 dma1024 1024 1 0 0 1 0 1 1 0 8 0 dma256 256 6 0 6 1 1 0 1 0 8 0 dma128 128 253 0 253 1 1 0 1 0 8 0 dma64 64 6 0 6 1 1 0 1 0 8 0 dma32 32 7 0 7 1 1 0 1 0 8 0 dma16 16 18 0 17 1 0 1 1 0 8 0 aobjpl 64 43 0 0 1 0 1 1 0 8 0 uaddrrnd 24 1519 0 1503 1 0 1 1 0 8 0 uaddrbest 32 2 0 0 1 0 1 1 0 8 0 uaddr 24 1519 0 1503 1 0 1 1 0 8 0 vmmpekpl 168 10565 0 10541 2 0 2 2 0 8 0 vmmpepl 168 168426 0 167034 68 1 67 67 0 357 1 vmsppl 368 1518 0 1503 2 0 2 2 0 8 0 rwobjpl 56 30966 0 30134 15 2 13 13 0 8 1 pdppl 4096 3045 0 3006 57 16 41 45 0 8 2 pvpl 32 832727 0 823169 133 47 86 129 0 265 2 pmappl 232 1518 0 1503 2 1 1 2 0 8 0 extentpl 40 58 0 40 1 0 1 1 0 8 0 phpool 112 324 0 24 9 0 9 9 0 8 0 ddb{0}> machine ddbcpu 0 Invalid cpu 0 ddb{0}> trace db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398 witness_checkorder(fffffd80669a73d0,9,0) at witness_checkorder+0x108b rw_enter(fffffd80669a73c0,1) at rw_enter+0xd4 rrw_enter(fffffd80669a73c0,1) at rrw_enter+0x88 sys/kern/kern_rwlock.c:461 VOP_LOCK(fffffd80679c2870,2001) at VOP_LOCK+0x87 sys/kern/vfs_vops.c:614 vn_lock(fffffd80679c2870,2001) at vn_lock+0x84 sys/kern/vfs_vnops.c:579 vget(fffffd80679c2870,2001) at vget+0x1f7 sys/kern/vfs_subr.c:676 ktrwriteraw(ffff800021272fc0,fffffd80679c2870,fffffd807f7d8a80,ffff8000234c17f0,ffff8000234c17d0) at ktrwriteraw+0x138 sys/kern/kern_ktrace.c:659 ktrstruct(ffff800021272fc0,ffffffff823b8e5c,ffff8000234c18d8,8) at ktrstruct+0x169 ktrwrite2 sys/kern/kern_ktrace.c:627 [inline] ktrstruct(ffff800021272fc0,ffffffff823b8e5c,ffff8000234c18d8,8) at ktrstruct+0x169 sys/kern/kern_ktrace.c:311 sys_socketpair(ffff800021272fc0,ffff8000234c1948,ffff8000234c1990) at sys_socketpair+0x3ed sys/kern/uipc_syscalls.c:470 syscall(ffff8000234c1a10) at syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] syscall(ffff8000234c1a10) at syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0x350454b4fe0, count: -12 ddb{0}> machine ddbcpu 1 Stopped at x86_ipi_db+0x1a: addq $0x8,%rsp ddb{1}> trace x86_ipi_db(ffff800020d58ff0) at x86_ipi_db+0x1a sys/arch/amd64/amd64/db_interface.c:352 x86_ipi_handler() at x86_ipi_handler+0xb7 sys/arch/amd64/amd64/ipi.c:106 Xresume_lapic_ipi() at Xresume_lapic_ipi+0x23 end of kernel end trace frame: 0x7f7ffffd8800, count: -3