witness: lock order reversal: 1st 0xffff800000dbcc70 vmmaplk (&map->lock) 2nd 0xffff800001d03930 inode (&ip->i_lock) lock order [1] vmmaplk (&map->lock) -> [2] inode (&ip->i_lock) #0 rw_do_enter_write+0xc4 sys/kern/kern_rwlock.c:234 #1 rrw_enter+0xf0 sys/kern/kern_rwlock.c:621 #2 VOP_LOCK+0x17e sys/kern/vfs_vops.c:527 #3 vn_lock+0xca sys/kern/vfs_vnops.c:576 #4 vn_rdwr+0x138 sys/kern/vfs_vnops.c:326 #5 vndstrategy+0x8e4 sys/dev/vnd.c:342 #6 physio+0x581 sys/kern/kern_physio.c:162 #7 spec_read+0x29a sys/kern/spec_vnops.c:215 #8 VOP_READ+0x1a8 sys/kern/vfs_vops.c:227 #9 vn_read+0x1fc sys/kern/vfs_vnops.c:375 #10 dofilereadv+0x386 sys/kern/sys_generic.c:252 #11 sys_read+0x141 sys/kern/sys_generic.c:172 #12 syscall+0x1089 mi_syscall sys/sys/syscall_mi.h:176 [inline] #12 syscall+0x1089 sys/arch/amd64/amd64/trap.c:791 #13 Xsyscall+0x128 lock order [2] inode (&ip->i_lock) -> [1] vmmaplk (&map->lock) #0 rw_do_enter_read+0x8b sys/kern/kern_rwlock.c:355 #1 uvmfault_lookup+0x1a2 sys/uvm/uvm_fault.c:-1 #2 uvm_fault_check+0x43 sys/uvm/uvm_fault.c:693 #3 uvm_fault+0x1e7 sys/uvm/uvm_fault.c:627 #4 kpageflttrap+0x41e sys/arch/amd64/amd64/trap.c:285 #5 kerntrap+0x1b6 sys/arch/amd64/amd64/trap.c:532 #6 alltraps_kern_meltdown+0x7b #7 copyout+0x59 #8 ffs_read+0x701 sys/ufs/ffs/ffs_vnops.c:254 #9 VOP_READ+0x1a8 sys/kern/vfs_vops.c:227 #10 vn_rdwr+0x1bc sys/kern/vfs_vnops.c:-1 #11 vmcmd_map_readvn+0x20a sys/kern/exec_subr.c:250 #12 exec_process_vmcmds+0x164 sys/kern/exec_subr.c:139 #13 sys_execve+0x1354 sys/kern/kern_exec.c:540 #14 start_init+0x5fb sys/kern/init_main.c:732 #15 proc_trampoline+0x10 Stopped at db_enter+0x17: popq %rbp ddb{1}> ddb{1}> set $lines = 0 ddb{1}> set $maxwidth = 0 ddb{1}> show panic the kernel did not panic ddb{1}> show kasan kasan: no report recorded this boot ddb{1}> trace db_enter() at db_enter+0x17 sys/arch/amd64/amd64/db_interface.c:457 witness_checkorder(ffff800001d03930,9,0) at witness_checkorder+0x19db sys/kern/subr_witness.c:-1 rw_do_enter_write(ffff800001d03918,1) at rw_do_enter_write+0xc4 sys/kern/kern_rwlock.c:234 rrw_enter(ffff800001d03918,1) at rrw_enter+0xf0 sys/kern/kern_rwlock.c:621 VOP_LOCK(ffff80000183fcf8,2001) at VOP_LOCK+0x17e sys/kern/vfs_vops.c:527 vn_lock(ffff80000183fcf8,2001) at vn_lock+0xca sys/kern/vfs_vnops.c:576 vn_rdwr(0,ffff80000183fcf8,ffff800011b06cc0,5d,0,1,ffff800000d9c5b8,ffff800001cb4560,ffff800001cb45d0,ffff800028fd3ff0) at vn_rdwr+0x138 sys/kern/vfs_vnops.c:326 vndstrategy(ffff800001cb4560) at vndstrategy+0x8e4 sys/dev/vnd.c:342 physio(ffffffff83c7e780,2902,8000,ffffffff833ec6c0,ffff8000299fbe20) at physio+0x581 sys/kern/kern_physio.c:162 spec_read(ffff8000299fbbe0) at spec_read+0x29a sys/kern/spec_vnops.c:215 VOP_READ(ffff8000019726c8,ffff8000299fbe20,0,ffff800000119750) at VOP_READ+0x1a8 sys/kern/vfs_vops.c:227 vn_read(ffff800001ba8028,ffff8000299fbe20,0) at vn_read+0x1fc sys/kern/vfs_vnops.c:375 dofilereadv(ffff800029893258,4,ffff8000299fbe20,0,ffff8000299fbfe0) at dofilereadv+0x386 sys/kern/sys_generic.c:252 sys_read(ffff800029893258,ffff8000299fc070,ffff8000299fbfe0) at sys_read+0x141 sys/kern/sys_generic.c:172 syscall(ffff8000299fc070) at syscall+0x1089 mi_syscall sys/sys/syscall_mi.h:176 [inline] syscall(ffff8000299fc070) at syscall+0x1089 sys/arch/amd64/amd64/trap.c:791 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0x9ee0864ee00, count: -16 ddb{1}> show registers rdi 0 rsi 0 rbp 0xffff8000299fb2e0 rbx 0xffffffff84991460 .str.41 rdx 0 rcx 0xffff800028fd3ff0 rax 0 r8 0xffff8000299fb0c0 r9 0xffff8000299fb060 r10 0xffff8000299fb598 r11 0xffffffff821db0c0 x86_bus_space_io_read_1 r12 0xffffffff84a296e0 ffs_vget.__lock_type r13 0xffff800000dbcc70 r14 0x3 r15 0xffffffff84a29720 .str.13 rip 0xffffffff8107c237 db_enter+0x17 cs 0x8 rflags 0x246 rsp 0xffff8000299fb2e0 ss 0x10 db_enter+0x17: popq %rbp ddb{1}> show proc PROC (syz-executor) tid=479387 pid=65929 tcnt=4 stat=onproc flags process=0 proc=4000000 runpri=32, usrpri=75, slppri=32, nice=20 wchan=0x0, wmesg=, ps_single=0x0 scnt=0 ecnt=0 forw=0xffffffffffffffff, list=0xffff800029885c90,0xffff800029893a30 process=0xffff800029907558 user=0xffff8000299f1000, vmspace=0xffff800000dbcb70 estcpu=25, cpticks=1, pctcpu=0.0, user=0, sys=1, intr=0 ddb{1}> ps PID TID PPID UID S PRLAGS PFLAGS WAIT COMMAND 23967 174185 58043 0 7 0 0 syz-executor 23967 262115 58043 0 3 0 0x4000080 fsleep syz-executor 23967 440911 58043 0 2 0 0x4000000 syz-executor 23967 349636 58043 0 3 0 0x4000080 fsleep syz-executor 23967 506241 58043 0 3 0 0x4000080 fsleep syz-executor 44630 319489 7593 0 2 0x100002 0 arp 7593 510161 7386 0 3 0x100002 0x88 sigsusp sh 73784 151604 22387 0 2 0x2 0 sh 20083 235405 94556 0 2 0x2 0 ifconfig 94556 167135 29422 0 3 0x100002 0x88 sigsusp sh 65929 17187 69256 0 2 0 0 syz-executor *65929 479387 69256 0 7 0 0x4000000 syz-executor 65929 23211 69256 0 3 0 0x4000080 fsleep syz-executor 65929 436868 69256 0 3 0 0x4000080 fsleep syz-executor 28772 149318 61685 0 2 0 0 syz-executor 28772 484764 61685 0 3 0 0x4000080 ttyout syz-executor 28772 168414 61685 0 3 0 0x4000080 fsleep syz-executor 28772 74644 61685 0 3 0 0x4000080 fsleep syz-executor 64707 496887 3537 0 2 0 0 syz-executor 64707 3207 3537 0 3 0 0x4000080 fsleep syz-executor 89479 340081 81722 0 3 0 0x80 nanoslp syz-executor 89479 67122 81722 0 3 0 0x4000080 kqread syz-executor 89479 110001 81722 0 3 0 0x4000080 fsleep syz-executor 22387 482389 11192 0 3 0x2 0x80 wait syz-executor 7386 98875 11192 0 3 0x2 0x80 wait syz-executor 29422 73312 11192 0 3 0x2 0x80 wait syz-executor 58043 108289 11192 0 3 0x2 0x80 nanoslp syz-executor 81722 438782 11192 0 3 0x2 0x80 nanoslp syz-executor 61685 296408 11192 0 3 0x2 0x80 nanoslp syz-executor 59796 422831 1 0 3 0x100003 0x80 ttyin getty 69256 384342 11192 0 3 0x2 0x80 nanoslp syz-executor 93324 245062 0 0 3 0x14000 0x280 nfsidl nfsio 86335 76795 0 0 3 0x14000 0x280 nfsidl nfsio 5061 374182 0 0 3 0x14000 0x280 nfsidl nfsio 64453 285710 0 0 3 0x14000 0x280 nfsidl nfsio 38790 497049 0 0 3 0x14000 0x280 nfsidl nfsio 80236 424533 0 0 3 0x14000 0x280 nfsidl nfsio 31256 435675 0 0 3 0x14000 0x280 nfsidl nfsio 8246 226049 0 0 3 0x14000 0x280 nfsidl nfsio 67519 396591 0 0 3 0x14000 0x280 nfsidl nfsio 60011 337039 0 0 3 0x14000 0x280 nfsidl nfsio 31863 439945 0 0 3 0x14000 0x280 nfsidl nfsio 37180 485500 0 0 3 0x14000 0x280 nfsidl nfsio 28128 285797 0 0 3 0x14000 0x280 nfsidl nfsio 42183 224905 0 0 3 0x14000 0x280 nfsidl nfsio 16787 135755 0 0 3 0x14000 0x280 nfsidl nfsio 6376 108046 0 0 3 0x14000 0x280 nfsidl nfsio 33026 298053 0 0 3 0x14000 0x280 nfsidl nfsio 24520 332893 0 0 3 0x14000 0x280 nfsidl nfsio 84288 106989 0 0 3 0x14000 0x280 nfsidl nfsio 62550 160302 0 0 3 0x14000 0x280 nfsidl nfsio 3537 374104 11192 0 3 0x2 0x80 nanoslp syz-executor 11192 162751 1 0 2 0x2 0x80 syz-executor 68638 333521 39685 74 3 0x1100012 0x80 bpf pflogd 39685 112648 1 0 3 0 0x80 sbwait pflogd 29893 506283 0 0 3 0x14000 0x200 bored smr 71849 7714 0 0 2 0x14000 0x200 zerothread 25793 208074 0 0 3 0x14000 0x200 aiodoned aiodoned 32468 124510 0 0 3 0x14000 0x200 syncer update 60720 22484 0 0 3 0x14000 0x200 cleaner cleaner 10836 33406 0 0 3 0x14000 0x200 reaper reaper 53698 480621 0 0 3 0x14000 0x200 pgdaemon pagedaemon 62738 422200 0 0 3 0x14000 0x200 bored viomb 69912 201023 0 0 3 0x14000 0x40000200 acpi0 acpi0 32999 463238 0 0 3 0x14000 0x40000200 idle1 3633 53830 0 0 3 0x14000 0x200 bored softnet1 72481 39064 0 0 2 0x14000 0x200 softnet0 44406 196937 0 0 3 0x14000 0x200 bored systqmp 94441 496218 0 0 3 0x14000 0x200 bored systq 5856 154496 0 0 3 0x14000 0x200 tmoslp softclockmp 47753 190025 0 0 3 0x14000 0x40000200 tmoslp softclock 21886 496683 0 0 3 0x14000 0x40000200 idle0 1 93255 0 0 3 0x2 0x80 wait init 0 0 -1 0 3 0x10010000 0x200 scheduler swapper ddb{1}> show all locks Process 65929 (syz-executor) thread 0xffff800029893258 (479387) shared rwlock vmmaplk r = 0 (0xffff800000dbcc70) #0 witness_lock+0x632 stacktrace_save sys/sys/stacktrace.h:37 [inline] #0 witness_lock+0x632 sys/kern/subr_witness.c:1160 #1 rw_do_enter_read+0x55d sys/kern/kern_rwlock.c:413 #2 uvm_vslock_device+0x1bc sys/uvm/uvm_glue.c:173 #3 physio+0x4a7 sys/kern/kern_physio.c:139 #4 spec_read+0x29a sys/kern/spec_vnops.c:215 #5 VOP_READ+0x1a8 sys/kern/vfs_vops.c:227 #6 vn_read+0x1fc sys/kern/vfs_vnops.c:375 #7 dofilereadv+0x386 sys/kern/sys_generic.c:252 #8 sys_read+0x141 sys/kern/sys_generic.c:172 #9 syscall+0x1089 mi_syscall sys/sys/syscall_mi.h:176 [inline] #9 syscall+0x1089 sys/arch/amd64/amd64/trap.c:791 #10 Xsyscall+0x128 exclusive kernel_lock &kernel_lock r = 0 (0xffffffff85609240) #0 witness_lock+0x632 stacktrace_save sys/sys/stacktrace.h:37 [inline] #0 witness_lock+0x632 sys/kern/subr_witness.c:1160 #1 vn_read+0x83 sys/kern/vfs_vnops.c:357 #2 dofilereadv+0x386 sys/kern/sys_generic.c:252 #3 sys_read+0x141 sys/kern/sys_generic.c:172 #4 syscall+0x1089 mi_syscall sys/sys/syscall_mi.h:176 [inline] #4 syscall+0x1089 sys/arch/amd64/amd64/trap.c:791 #5 Xsyscall+0x128 ddb{1}> show malloc Type InUse MemUse HighUse Limit Requests Type Lim devbuf 11061 12251K 12403K 166960K 12523 0 pcb 19 26K 30K 166960K 77 0 rtable 215 14K 30K 166960K 1597 0 pf 38 23K 37K 166960K 148 0 ifaddr 42 11K 16K 166960K 223 0 ifgroup 61 2K 3K 166960K 243 0 sysctl 3 1K 13K 166960K 10 0 counters 74 43K 45K 166960K 166 0 ioctlops 2 1K 194K 166960K 1584 0 iov 0 0K 12K 166960K 4 0 mount 1 1K 1K 166960K 1 0 log 1 12K 12K 166960K 5 0 vnodes 1363 88K 90K 166960K 1968 0 UFS quota 1 36K 36K 166960K 1 0 UFS mount 5 44K 44K 166960K 5 0 shm 2 2K 6K 166960K 6 0 VM map 2 1K 1K 166960K 2 0 sem 12 0K 0K 166960K 12 0 dirhash 12 2K 2K 166960K 12 0 ACPI 1734 201K 413K 166960K 11964 0 file desc 25 82K 120K 166960K 967 0 sigio 0 0K 0K 166960K 6 0 proc 116 82K 195K 166960K 1802 0 subproc 84 10K 14K 166960K 468 0 NFS srvsock 1 0K 0K 166960K 1 0 NFS daemon 1 20K 20K 166960K 1 0 ip_moptions 0 0K 0K 166960K 8 0 in_multi 80 6K 9K 166960K 553 0 ether_multi 1 0K 0K 166960K 1 0 mrt 2 0K 0K 166960K 15 0 ISOFS mount 1 36K 36K 166960K 1 0 MSDOSFS mount 1 20K 20K 166960K 1 0 ttys 43 303K 303K 166960K 43 0 exec 38 9K 17K 166960K 951 0 fusefs mount 1 36K 36K 166960K 1 0 tdb 3 1K 1K 166960K 3 0 VM swap 14 124K 124K 166960K 15 0 UVM amap 422 212K 373K 166960K 8356 0 UVM aobj 12 4K 8K 166960K 14 0 pinsyscall 150 255K 382K 166960K 3245 0 memdesc 1 4K 4K 166960K 1 0 crypto data 1 1K 1K 166960K 1 0 ip6_options 0 0K 1K 166960K 35 0 NDP 16 0K 2K 166960K 158 0 temp 452 9372K 9474K 166960K 9440 0 kqueue 4 16K 84K 166960K 62 0 SYN cache 2 16K 16K 166960K 2 0 ddb{1}> show all pools Name Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle plcache 128 28 0 0 1 0 1 1 0 8 0 rtpcb 120 117 0 116 1 0 1 1 0 8 0 rtentry 176 573 0 486 6 1 5 6 0 8 0 unpcb 144 221 0 219 1 0 1 1 0 8 0 syncache 336 4 0 4 2 2 0 1 0 8 0 tcpcb 736 21 0 20 1 0 1 1 0 8 0 arp 136 105 0 89 1 0 1 1 0 8 0 inpcb 328 373 0 371 4 2 2 4 0 8 1 nd6 152 147 0 132 1 0 1 1 0 8 0 pkpcb 40 2 0 2 1 1 0 1 0 8 0 kcovpl 48 52 0 44 1 0 1 1 0 8 0 ppxss 1192 2 0 2 2 1 1 1 0 8 1 pffrag 232 2 0 0 1 0 1 1 0 482 0 pffrnode 88 2 0 0 1 0 1 1 0 8 0 pffrent 40 3 0 1 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 pfanchor 1288 3 0 0 1 0 1 1 0 8 0 pfstitem 24 39 0 6 1 0 1 1 0 8 0 pfstkey 128 39 0 6 2 0 2 2 0 8 0 pfstate 448 39 0 6 5 0 5 5 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 2281 0 1942 30 1 29 29 0 8 3 art_table 40 2282 0 1942 5 0 5 5 0 8 0 art_node 32 573 0 493 1 0 1 1 0 8 0 sysvmsgpl 40 2 0 1 1 0 1 1 0 8 0 semapl 72 10 0 0 1 0 1 1 0 8 0 shmpl 120 11 0 2 1 0 1 1 0 8 0 dirhash 1024 17 0 0 3 0 3 3 0 8 0 dino2pl 256 1923 0 351 99 0 99 99 0 8 0 ffsino 296 1923 0 351 121 0 121 121 0 8 0 nchpl 144 2360 0 513 69 0 69 69 0 8 0 vnodes 216 2572 0 0 143 0 143 143 0 8 0 namei 1024 13695 0 13695 3 2 1 3 0 8 1 percpumem 16 99 0 48 1 0 1 1 0 8 0 kstatmem 264 123 0 96 2 0 2 2 0 8 0 scxspl 216 8785 0 8785 9 7 2 8 1 8 2 plimitpl 152 163 0 151 1 0 1 1 0 8 0 sigapl 424 1218 0 1158 10 1 9 9 0 8 0 knotepl 120 144 0 0 5 0 5 5 0 8 0 kqueuepl 224 249 0 246 3 2 1 3 0 8 0 pipepl 344 288 0 261 4 1 3 4 0 8 0 fdescpl 528 1181 0 1157 3 0 3 3 0 8 0 filepl 160 4562 0 4399 16 4 12 15 0 8 0 lockfpl 104 95 0 94 1 0 1 1 0 8 0 lockfspl 48 45 0 44 1 0 1 1 0 8 0 sessionpl 144 82 0 78 1 0 1 1 0 8 0 pgrppl 48 135 0 123 1 0 1 1 0 8 0 ucredpl 104 350 0 344 1 0 1 1 0 8 0 zombiepl 144 1158 0 1158 1 0 1 1 0 8 1 processpl 1240 1218 0 1158 6 0 6 6 0 8 0 procpl 664 1623 0 1550 7 0 7 7 0 8 0 sosppl 176 1 0 1 1 1 0 1 0 8 0 sockpl 752 719 0 714 7 3 4 7 0 8 2 mcl64k 65536 2 0 0 1 0 1 1 0 8 0 mcl9k128 9344 2 0 0 1 0 1 1 0 8 0 mcl8k 8192 2 0 0 1 0 1 1 0 8 0 mcl4k 4096 125 0 0 16 0 16 16 0 8 0 mcl2k 2048 25 0 0 4 0 4 4 0 8 1 mextrefs 64 24 0 0 1 0 1 1 0 8 0 mtagpl 96 2 0 0 1 0 1 1 0 8 0 mbufpl 256 193 0 0 13 0 13 13 0 8 0 bufpl 272 2801 0 111 180 0 180 180 0 8 0 anonpl 32 5263 0 0 43 0 43 43 0 222 0 amapchunkpl 152 22821 0 22431 23 2 21 22 0 158 6 amappl16 200 2242 0 2232 6 4 2 5 0 8 0 amappl15 192 7 0 7 1 1 0 1 0 8 0 amappl14 184 948 0 946 1 0 1 1 0 8 0 amappl13 176 213 0 209 1 0 1 1 0 8 0 amappl12 168 1618 0 1597 2 0 2 2 0 8 0 amappl11 160 18 0 18 2 2 0 1 0 8 0 amappl10 152 63 0 59 1 0 1 1 0 8 0 amappl9 144 272 0 272 1 0 1 1 0 8 1 amappl8 136 272 0 270 1 0 1 1 0 8 0 amappl7 128 260 0 254 1 0 1 1 0 8 0 amappl6 120 587 0 583 1 0 1 1 0 8 0 amappl5 112 107 0 104 1 0 1 1 0 8 0 amappl4 104 439 0 432 1 0 1 1 0 8 0 amappl3 96 4274 0 4200 3 0 3 3 0 8 0 amappl2 88 1133 0 1101 2 0 2 2 0 8 0 amappl1 80 16676 0 16473 17 2 15 16 0 8 6 amappl 88 6886 0 6757 5 1 4 5 0 92 0 uvmvnodes 80 107 0 0 3 0 3 3 0 8 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 7 0 7 2 2 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 72 13 0 2 1 0 1 1 0 8 0 uaddrrnd 24 1181 0 1157 1 0 1 1 0 8 0 uaddrbest 32 2 0 0 1 0 1 1 0 8 0 uaddr 24 1181 0 1157 1 0 1 1 0 8 0 vmmpekpl 168 11501 0 11450 4 0 4 4 0 8 0 vmmpepl 168 84539 0 83528 91 3 88 90 0 357 38 vmsppl 488 1180 0 1157 5 0 5 5 0 8 1 rwobjpl 80 26340 0 25764 25 1 24 25 0 8 0 pdppl 4096 2371 0 2314 145 84 61 87 0 8 4 pvpl 32 12269 0 0 101 2 99 99 0 265 0 pmappl 256 1180 0 1157 3 0 3 3 0 8 0 extentpl 40 47 0 29 1 0 1 1 0 8 0 phpool 120 513 0 93 13 0 13 13 0 8 0 ddb{1}> machine ddbcpu 0 Stopped at x86_ipi_db+0x19: leave ddb{0}>