witness: lock order reversal: 1st 0xfffffd806e774448 fdlock (&newfdp->fd_fd.fd_lock) 2nd 0xfffffd80662101b0 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{1}> ddb{1}> set $lines = 0 ddb{1}> set $maxwidth = 0 ddb{1}> show panic the kernel did not panic ddb{1}> trace db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398 witness_checkorder(fffffd80662101b0,9,0) at witness_checkorder+0x108b rw_enter(fffffd80662101a0,1) at rw_enter+0xd4 rrw_enter(fffffd80662101a0,1) at rrw_enter+0x88 sys/kern/kern_rwlock.c:461 VOP_LOCK(fffffd80664cb018,2001) at VOP_LOCK+0x87 sys/kern/vfs_vops.c:614 vn_lock(fffffd80664cb018,2001) at vn_lock+0x84 sys/kern/vfs_vnops.c:579 vget(fffffd80664cb018,2001) at vget+0x1f7 sys/kern/vfs_subr.c:676 ktrwriteraw(ffff800021273ce0,fffffd80664cb018,fffffd807f7d8a20,ffff8000228df1c0,ffff8000228df1a0) at ktrwriteraw+0x138 sys/kern/kern_ktrace.c:659 ktrstruct(ffff800021273ce0,ffffffff823c1b4a,ffff8000228df2a8,8) at ktrstruct+0x169 ktrwrite2 sys/kern/kern_ktrace.c:627 [inline] ktrstruct(ffff800021273ce0,ffffffff823c1b4a,ffff8000228df2a8,8) at ktrstruct+0x169 sys/kern/kern_ktrace.c:311 sys_socketpair(ffff800021273ce0,ffff8000228df318,ffff8000228df360) at sys_socketpair+0x3ed sys/kern/uipc_syscalls.c:470 syscall(ffff8000228df3e0) at syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] syscall(ffff8000228df3e0) at syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0xed1a20ca6a0, count: -12 ddb{1}> show registers rdi 0xffff8000222bc000 rsi 0xcb61 __ALIGN_SIZE+0xbb61 rbp 0xffff8000228dedd0 rbx 0x3 rdx 0xffff8000222bc000 rcx 0xcb60 __ALIGN_SIZE+0xbb60 rax 0xffffffff81b46ed7 db_enter+0x17 r8 0xffffffff81c4ab21 witness_checkorder+0x1061 r9 0x5 r10 0xf19775b9dc2f491e r11 0xf5fe811731f73ba7 r12 0 r13 0xfffffd80662101b0 r14 0 r15 0xfffffd8002cfb740 rip 0xffffffff81b46ed8 db_enter+0x18 cs 0x8 rflags 0x246 rsp 0xffff8000228dedc0 ss 0x10 db_enter+0x18: addq $0x8,%rsp ddb{1}> show proc PROC (syz-executor.1) pid=407132 stat=onproc flags process=0 proc=4000001 pri=32, usrpri=79, nice=20 forw=0xffffffffffffffff, list=0xffff800021273260,0xffffffff82948c08 process=0xffff8000ffff8cb0 user=0xffff8000228da000, vmspace=0xfffffd8064b05740 estcpu=36, cpticks=0, pctcpu=0.0 user=0, sys=0, intr=0 ddb{1}> ps PID TID PPID UID S FLAGS WAIT COMMAND 69680 461494 66497 0 7 0x1 syz-executor.1 *69680 407132 66497 0 7 0x4000001 syz-executor.1 97250 40205 50220 0 2 0 syz-executor.0 97250 55573 50220 0 2 0x4000000 syz-executor.0 50220 299503 81587 0 3 0x82 nanoslp syz-executor.0 66497 358372 81587 0 3 0x82 nanoslp syz-executor.1 43764 398796 0 0 3 0x14200 bored sosplice 17246 489104 0 0 3 0x14200 acct acct 81587 451739 31787 0 3 0x82 thrsleep syz-fuzzer 81587 256302 31787 0 3 0x4000082 nanoslp syz-fuzzer 81587 359010 31787 0 3 0x4000082 thrsleep syz-fuzzer 81587 453425 31787 0 3 0x4000082 kqread syz-fuzzer 81587 119135 31787 0 3 0x4000082 thrsleep syz-fuzzer 81587 197313 31787 0 3 0x4000082 thrsleep syz-fuzzer 81587 209362 31787 0 3 0x4000082 thrsleep syz-fuzzer 81587 481839 31787 0 3 0x4000082 thrsleep syz-fuzzer 31787 211045 7043 0 3 0x10008a sigsusp ksh 7043 500600 73652 0 3 0x92 select sshd 84069 279655 1 0 3 0x100083 ttyin getty 73652 44020 1 0 3 0x80 select sshd 73343 522782 96057 74 3 0x100092 bpf pflogd 96057 129508 1 0 3 0x80 netio pflogd 80982 229876 69428 73 3 0x100090 kqread syslogd 69428 439183 1 0 3 0x100082 netio syslogd 54119 369167 1 77 3 0x100090 poll dhclient 38635 364483 1 0 3 0x80 poll dhclient 23640 230763 0 0 3 0x14200 bored smr 51538 309428 0 0 2 0x14200 zerothread 2484 157461 0 0 3 0x14200 aiodoned aiodoned 71081 308840 0 0 3 0x14200 syncer update 65917 55873 0 0 3 0x14200 cleaner cleaner 21982 45380 0 0 3 0x14200 reaper reaper 19964 69874 0 0 3 0x14200 pgdaemon pagedaemon 94382 523219 0 0 3 0x14200 bored crynlk 28335 178462 0 0 3 0x14200 bored crypto 67902 227075 0 0 3 0x14200 bored viomb 12331 494675 0 0 3 0x40014200 acpi0 acpi0 61518 296297 0 0 3 0x40014200 idle1 72216 185090 0 0 3 0x14200 bored softnet 35881 352194 0 0 3 0x14200 bored systqmp 37880 225061 0 0 3 0x14200 bored systq 26398 301007 0 0 3 0x40014200 bored softclock 80406 389141 0 0 3 0x40014200 idle0 1 30069 0 0 3 0x82 wait init 0 0 -1 0 3 0x10200 scheduler swapper ddb{1}> show all locks Process 69680 (syz-executor.1) thread 0xffff800021273ce0 (407132) exclusive kernel_lock &kernel_lock r = 0 (0xffffffff82826ca0) #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 (0xfffffd806e774448) #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 ddb{1}> show malloc Type InUse MemUse HighUse Limit Requests Type Lim devbuf 10142 6503K 7782K 78643K 14616 0 pcb 13 8K 8K 78643K 150 0 rtable 102 3K 3K 78643K 479 0 ifaddr 52 11K 11K 78643K 132 0 counters 44 34K 34K 78643K 74 0 ioctlops 0 0K 4K 78643K 1517 0 iov 0 0K 32K 78643K 125 0 mount 1 1K 1K 78643K 1 0 log 0 0K 0K 78643K 1 0 vnodes 1235 78K 78K 78643K 2613 0 UFS quota 1 32K 32K 78643K 1 0 UFS mount 5 36K 36K 78643K 5 0 shm 2 1K 9K 78643K 39 0 VM map 2 1K 1K 78643K 2 0 sem 10 0K 0K 78643K 16 0 dirhash 12 2K 2K 78643K 12 0 ACPI 1697 195K 286K 78643K 12598 0 file desc 6 17K 25K 78643K 3099 0 sigio 0 0K 0K 78643K 33 0 proc 63 63K 95K 78643K 703 0 subproc 32 2K 3K 78643K 119 0 NFS srvsock 1 0K 0K 78643K 1 0 NFS daemon 1 16K 16K 78643K 1 0 ip_moptions 0 0K 0K 78643K 172 0 in_multi 29 1K 2K 78643K 85 0 ether_multi 1 0K 0K 78643K 12 0 mrt 0 0K 0K 78643K 1 0 ISOFS mount 1 32K 32K 78643K 1 0 MSDOSFS mount 1 16K 16K 78643K 1 0 ttys 61 281K 281K 78643K 61 0 exec 0 0K 2K 78643K 515 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 217 91K 106K 78643K 38021 0 UVM aobj 15 7K 7K 78643K 15 0 memdesc 1 4K 4K 78643K 1 0 crypto data 1 1K 1K 78643K 1 0 ip6_options 0 0K 0K 78643K 76 0 NDP 8 0K 0K 78643K 32 0 temp 90 3979K 4043K 78643K 30816 0 kqueue 3 4K 8K 78643K 38 0 SYN cache 2 16K 16K 78643K 2 0 ddb{1}> 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 119 0 117 1 0 1 1 0 8 0 rtentry 112 71 0 30 3 1 2 2 0 8 0 unpcb 120 701 0 667 2 0 2 2 0 8 0 syncache 296 58 0 58 4 3 1 1 0 8 1 tcpqe 32 51 0 51 3 3 0 1 0 8 0 tcpcb 736 423 0 419 14 10 4 5 0 8 3 arp 120 10 0 4 1 0 1 1 0 8 0 inpcb 304 1013 0 1007 3 2 1 2 0 8 0 nd6 48 13 0 9 1 0 1 1 0 8 0 pkpcb 40 27 0 27 3 2 1 1 0 8 1 kcovpl 48 7 0 5 1 0 1 1 0 8 0 ppxss 1128 4 0 4 1 1 0 1 0 8 0 pffrent 40 5 0 5 1 1 0 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 34 0 31 1 0 1 1 0 8 0 pfstkey 112 34 0 31 1 0 1 1 0 8 0 pfstate 320 34 0 31 2 1 1 2 0 8 0 pfrule 1360 21 0 16 2 1 1 2 0 8 0 art_heap8 4096 1 0 0 1 0 1 1 0 8 0 art_heap4 256 306 0 131 13 2 11 12 0 8 0 art_table 32 307 0 131 2 0 2 2 0 8 0 art_node 16 70 0 32 1 0 1 1 0 8 0 sysvmsgpl 40 15 0 15 1 0 1 1 0 8 1 semupl 112 10 0 10 1 1 0 1 0 8 0 semapl 112 8 0 0 1 0 1 1 0 8 0 shmpl 112 12 0 0 1 0 1 1 0 8 0 dirhash 1024 17 0 0 3 0 3 3 0 8 0 dino2pl 256 5482 0 4072 91 2 89 89 0 8 0 ffsino 272 5482 0 4072 95 0 95 95 0 8 0 nchpl 144 9331 0 7734 60 0 60 60 0 8 0 uvmvnodes 72 5926 0 0 108 0 108 108 0 8 0 vnodes 224 5926 0 0 349 0 349 349 0 8 0 namei 1024 23017 0 23017 2 1 1 1 0 8 1 percpumem 16 48 0 15 1 0 1 1 0 8 0 vcpupl 1984 5 0 0 1 0 1 1 0 8 0 vmpool 560 5 0 0 1 0 1 1 0 8 0 scsiplug 72 7 0 7 1 1 0 1 0 8 0 scxspl 216 27700 0 27700 10 9 1 8 0 8 1 plimitpl 152 59 0 51 1 0 1 1 0 8 0 sigapl 424 3301 0 3266 5 0 5 5 0 8 0 futexpl 56 20774 0 20774 2 1 1 1 0 8 1 knotepl 112 158 0 138 1 0 1 1 0 8 0 kqueuepl 168 1188 0 1186 1 0 1 1 0 8 0 pipepl 336 190 0 179 4 2 2 2 0 8 0 fdescpl 496 3283 0 3266 3 0 3 3 0 8 0 filepl 152 10739 0 10635 5 0 5 5 0 8 1 lockfpl 104 655 0 654 1 0 1 1 0 8 0 lockfspl 48 209 0 208 1 0 1 1 0 8 0 sessionpl 144 23 0 12 1 0 1 1 0 8 0 pgrppl 48 23 0 12 1 0 1 1 0 8 0 ucredpl 96 1553 0 1544 1 0 1 1 0 8 0 zombiepl 144 3266 0 3266 2 1 1 1 0 8 1 processpl 1080 3301 0 3266 3 0 3 3 0 8 0 procpl 672 6894 0 6850 6 1 5 5 0 8 1 sosppl 168 68 0 68 3 3 0 1 0 8 0 sockpl 480 1860 0 1818 7 1 6 7 0 8 0 mcl64k 65536 6 0 0 1 0 1 1 0 8 0 mcl16k 16384 3 0 0 1 0 1 1 0 8 0 mcl12k 12288 2 0 0 1 0 1 1 0 8 0 mcl9k 9216 6 0 0 1 0 1 1 0 8 0 mcl8k 8192 11 0 0 2 0 2 2 0 8 0 mcl4k 4096 6 0 0 1 0 1 1 0 8 0 mcl2k 2048 191 0 0 14 0 14 14 0 8 0 mtagpl 96 183 0 0 4 0 4 4 0 8 0 mbufpl 256 639 0 0 36 0 36 36 0 8 0 bufpl 280 8629 0 2363 448 0 448 448 0 8 0 anonpl 24 807822 0 800968 50 6 44 44 0 186 0 amapchunkpl 152 91138 0 90747 35 18 17 29 0 158 1 amappl16 200 5978 0 5810 14 4 10 10 0 8 1 amappl15 192 64 0 59 1 0 1 1 0 8 0 amappl14 184 693 0 689 1 0 1 1 0 8 0 amappl13 176 1212 0 1210 1 0 1 1 0 8 0 amappl12 168 41 0 34 1 0 1 1 0 8 0 amappl11 160 393 0 377 1 0 1 1 0 8 0 amappl10 152 872 0 861 1 0 1 1 0 8 0 amappl9 144 15 0 14 2 1 1 1 0 8 0 amappl8 136 442 0 381 3 0 3 3 0 8 0 amappl7 128 69 0 58 1 0 1 1 0 8 0 amappl6 120 963 0 938 1 0 1 1 0 8 0 amappl5 112 3354 0 3341 1 0 1 1 0 8 0 amappl4 104 1270 0 1239 1 0 1 1 0 8 0 amappl3 96 1247 0 1243 1 0 1 1 0 8 0 amappl2 88 1162 0 1115 2 0 2 2 0 8 0 amappl1 80 56725 0 56293 13 3 10 12 0 8 0 amappl 88 37565 0 37435 5 1 4 4 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 14 0 0 1 0 1 1 0 8 0 uaddrrnd 24 3288 0 3266 1 0 1 1 0 8 0 uaddrbest 32 2 0 0 1 0 1 1 0 8 0 uaddr 24 3288 0 3266 1 0 1 1 0 8 0 vmmpekpl 168 20637 0 20613 2 0 2 2 0 8 0 vmmpepl 168 359616 0 358077 84 15 69 77 0 357 1 vmsppl 368 3287 0 3266 3 0 3 3 0 8 0 rwobjpl 56 63234 0 62350 16 3 13 13 0 8 0 pdppl 4096 6583 0 6537 68 22 46 50 0 8 0 pvpl 32 1749711 0 1739476 164 71 93 128 0 265 8 pmappl 232 3287 0 3266 3 1 2 2 0 8 0 extentpl 40 58 0 40 1 0 1 1 0 8 0 phpool 112 354 0 42 9 0 9 9 0 8 0 ddb{1}> machine ddbcpu 0 Stopped at x86_ipi_db+0x1a: addq $0x8,%rsp ddb{0}> trace x86_ipi_db(ffffffff82722ff0) 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 __mp_lock(ffffffff82826a98) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline] __mp_lock(ffffffff82826a98) at __mp_lock+0x122 sys/kern/kern_lock.c:147 softintr_dispatch(0) at softintr_dispatch+0x4e sys/arch/amd64/amd64/softintr.c:90 Xsoftclock() at Xsoftclock+0x1f __mp_lock(ffffffff82826a98) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline] __mp_lock(ffffffff82826a98) at __mp_lock+0x122 sys/kern/kern_lock.c:147 ktrstruct(ffff8000212737a0,ffffffff823c9baf,ffff8000212a78e8,10) at ktrstruct+0xee sys_clock_gettime(ffff8000212737a0,ffff8000212a7950,ffff8000212a79a0) at sys_clock_gettime+0xfb sys/kern/kern_time.c:171 syscall(ffff8000212a7a20) at syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] syscall(ffff8000212a7a20) at syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0x7f7ffffddb00, count: -11 ddb{0}> machine ddbcpu 1 Stopped at db_enter+0x18: addq $0x8,%rsp ddb{1}> trace db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:398 witness_checkorder(fffffd80662101b0,9,0) at witness_checkorder+0x108b rw_enter(fffffd80662101a0,1) at rw_enter+0xd4 rrw_enter(fffffd80662101a0,1) at rrw_enter+0x88 sys/kern/kern_rwlock.c:461 VOP_LOCK(fffffd80664cb018,2001) at VOP_LOCK+0x87 sys/kern/vfs_vops.c:614 vn_lock(fffffd80664cb018,2001) at vn_lock+0x84 sys/kern/vfs_vnops.c:579 vget(fffffd80664cb018,2001) at vget+0x1f7 sys/kern/vfs_subr.c:676 ktrwriteraw(ffff800021273ce0,fffffd80664cb018,fffffd807f7d8a20,ffff8000228df1c0,ffff8000228df1a0) at ktrwriteraw+0x138 sys/kern/kern_ktrace.c:659 ktrstruct(ffff800021273ce0,ffffffff823c1b4a,ffff8000228df2a8,8) at ktrstruct+0x169 ktrwrite2 sys/kern/kern_ktrace.c:627 [inline] ktrstruct(ffff800021273ce0,ffffffff823c1b4a,ffff8000228df2a8,8) at ktrstruct+0x169 sys/kern/kern_ktrace.c:311 sys_socketpair(ffff800021273ce0,ffff8000228df318,ffff8000228df360) at sys_socketpair+0x3ed sys/kern/uipc_syscalls.c:470 syscall(ffff8000228df3e0) at syscall+0x5bf mi_syscall sys/sys/syscall_mi.h:102 [inline] syscall(ffff8000228df3e0) at syscall+0x5bf sys/arch/amd64/amd64/trap.c:585 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0xed1a20ca6a0, count: -12