login: witness: lock order reversal: 1st 0xfffffd806813e5f0 vmmaplk (&map->lock) 2nd 0xfffffd806c6df058 fdlock (&newfdp->fd_fd.fd_lock) lock order "&newfdp->fd_fd.fd_lock"(rwlock) -> "&map->lock"(rwlock) first seen at: #0 rw_enter+0xd1 sys/kern/kern_rwlock.c:250 #1 uvmfault_lookup+0xd9 sys/uvm/uvm_fault.c:1758 #2 uvm_fault_check+0x3a sys/uvm/uvm_fault.c:674 #3 uvm_fault+0x102 sys/uvm/uvm_fault.c:602 #4 kpageflttrap+0x209 #5 kerntrap+0xef sys/arch/amd64/amd64/trap.c:318 #6 alltraps_kern_meltdown+0x7b #7 copyout+0x53 #8 syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline] #8 syscall+0x489 sys/arch/amd64/amd64/trap.c:585 #9 Xsyscall+0x128 lock order "&map->lock"(rwlock) -> "&newfdp->fd_fd.fd_lock"(rwlock) first seen at: #0 rw_enter_write+0x5b sys/kern/kern_rwlock.c:128 #1 fill_file+0xad2 sys/kern/kern_sysctl.c:1304 #2 sysctl_file+0x62d sys/kern/kern_sysctl.c:1457 #3 kern_sysctl+0xfd sys/kern/kern_sysctl.c:449 #4 sys_sysctl+0x209 sys/kern/kern_sysctl.c:249 #5 syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline] #5 syscall+0x489 sys/arch/amd64/amd64/trap.c:585 #6 Xsyscall+0x128 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:440 witness_checkorder(fffffd806c6df058,9,0) at witness_checkorder+0x10b7 witness_debugger sys/kern/subr_witness.c:2502 [inline] witness_checkorder(fffffd806c6df058,9,0) at witness_checkorder+0x10b7 sys/kern/subr_witness.c:1105 rw_enter_write(fffffd806c6df048) at rw_enter_write+0x5b sys/kern/kern_rwlock.c:128 fill_file(ffff800000bfcc00,fffffd806e616698,fffffd806c6df000,0,0,ffff80002bd394e8,4409f23d72fc35cb,4a00,0) at fill_file+0xad2 sys/kern/kern_sysctl.c:1304 sysctl_file(ffff80002a106ea8,4,20000080,ffff80002a106ed8,ffff8000260ab270) at sysctl_file+0x62d sys/kern/kern_sysctl.c:1457 kern_sysctl(ffff80002a106ea4,5,20000080,ffff80002a106ed8,0,0,b5a2fd328e5d2933) at kern_sysctl+0xfd sys/kern/kern_sysctl.c:449 sys_sysctl(ffff8000260ab270,ffff80002a106f48,ffff80002a106fa0) at sys_sysctl+0x209 sys/kern/kern_sysctl.c:249 syscall(ffff80002a107010) at syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline] syscall(ffff80002a107010) at syscall+0x489 sys/arch/amd64/amd64/trap.c:585 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0xfc80ef86c40, count: -9 ddb{1}> show registers rdi 0x3 rsi 0x40000 acpi_pdirpa+0x2be68 rbp 0xffff80002a106810 rbx 0x3 rdx 0xffff800000be7d40 rcx 0 rax 0x3ffff acpi_pdirpa+0x2be67 r8 0xffff80002a106780 r9 0x8080808080808080 r10 0x13b3d3ee2d5dda7b r11 0x98bb8b268eda05c5 r12 0xffffffff82aad0a0 w_lodata+0x4f730 r13 0 r14 0xffffffff82aab310 w_lodata+0x4d9a0 r15 0xfffffd8002f62c80 rip 0xffffffff8138d658 db_enter+0x18 cs 0x8 rflags 0x246 rsp 0xffff80002a106800 ss 0x10 db_enter+0x18: addq $0x8,%rsp ddb{1}> show proc PROC (syz-executor.1) pid=259170 stat=onproc flags process=10 proc=4000000 pri=86, usrpri=86, nice=20 forw=0xffffffffffffffff, list=0xffff8000ffff6fd0,0xffffffff82b3d400 process=0xffff80002bd39d38 user=0xffff80002a102000, vmspace=0xfffffd806813e5d8 estcpu=36, cpticks=0, pctcpu=0.0 user=0, sys=0, intr=0 ddb{1}> ps PID TID PPID UID S FLAGS WAIT COMMAND 79829 39930 61981 32767 7 0x10 syz-executor.6 79829 424199 61981 32767 3 0x4000090 netio syz-executor.6 79829 83933 61981 32767 3 0x4000090 netlck syz-executor.6 12558 64650 37712 32767 2 0x10 syz-executor.7 12558 434218 37712 32767 3 0x4000090 netio syz-executor.7 70861 439041 68566 32767 2 0x10 syz-executor.1 70861 120858 68566 32767 2 0x4000010 syz-executor.1 *70861 259170 68566 32767 7 0x4000010 syz-executor.1 68566 204842 72303 32767 3 0x90 nanoslp syz-executor.1 72303 327296 93610 0 3 0x82 wait syz-executor.1 87351 191505 22536 32767 3 0x90 piperd syz-executor.3 37712 82464 83794 32767 3 0x90 nanoslp syz-executor.7 83794 452732 93610 0 3 0x82 wait syz-executor.7 61981 421482 78671 32767 3 0x90 nanoslp syz-executor.6 40625 227072 39426 32767 3 0x90 piperd syz-executor.4 6547 279610 12376 32767 3 0x90 piperd syz-executor.5 78671 493480 93610 0 3 0x82 wait syz-executor.6 12376 92516 93610 0 3 0x82 wait syz-executor.5 39426 86483 93610 0 3 0x82 wait syz-executor.4 22536 516360 93610 0 3 0x82 wait syz-executor.3 55852 325225 71493 32767 3 0x90 piperd syz-executor.2 57659 479762 41025 32767 3 0x90 piperd syz-executor.0 71493 144575 93610 0 3 0x82 wait syz-executor.2 41025 523390 93610 0 3 0x82 wait syz-executor.0 93610 73903 64399 0 3 0x82 thrsleep syz-fuzzer 93610 236173 64399 0 3 0x4000082 thrsleep syz-fuzzer 93610 297911 64399 0 3 0x4000082 thrsleep syz-fuzzer 93610 303687 64399 0 3 0x4000082 thrsleep syz-fuzzer 93610 333720 64399 0 3 0x4000082 thrsleep syz-fuzzer 93610 141569 64399 0 3 0x4000082 thrsleep syz-fuzzer 93610 295633 64399 0 3 0x4000082 thrsleep syz-fuzzer 93610 431069 64399 0 3 0x4000082 thrsleep syz-fuzzer 93610 93615 64399 0 3 0x4000082 kqread syz-fuzzer 64399 187850 25056 0 3 0x10008a sigsusp ksh 25056 324463 49878 0 3 0x9a kqread sshd 6162 160216 1 0 3 0x100083 ttyin getty 49878 337831 1 0 3 0x88 kqread sshd 74217 72905 91117 73 3 0x1100090 kqread syslogd 91117 390193 1 0 3 0x100082 netio syslogd 35595 290853 1 0 3 0x100080 kqread resolvd 4236 134851 85902 77 3 0x100092 kqread dhcpleased 50675 393591 85902 77 3 0x100092 kqread dhcpleased 85902 134712 1 0 3 0x80 kqread dhcpleased 4934 514408 0 0 3 0x14200 bored smr 30975 423014 0 0 2 0x14200 zerothread 44137 465407 0 0 3 0x14200 aiodoned aiodoned 55284 223188 0 0 3 0x14200 syncer update 96728 93147 0 0 3 0x14200 cleaner cleaner 28071 438523 0 0 3 0x14200 reaper reaper 58776 414008 0 0 3 0x14200 pgdaemon pagedaemon 87940 336386 0 0 3 0x14200 bored viomb 22370 88450 0 0 3 0x40014200 acpi0 acpi0 17329 328357 0 0 3 0x40014200 idle1 2352 121159 0 0 3 0x14200 bored softnet 33114 475995 0 0 3 0x14200 bored systqmp 84815 302548 0 0 3 0x14200 bored systq 7898 452951 0 0 3 0x40014200 bored softclock 5574 143877 0 0 3 0x40014200 idle0 1 79072 0 0 3 0x82 wait init 0 0 -1 0 3 0x10200 scheduler swapper ddb{1}> show all locks Process 70861 (syz-executor.1) thread 0xffff8000260ab270 (259170) shared rwlock vmmaplk r = 0 (0xfffffd806813e5f0) #0 witness_lock+0x44d #1 uvm_vslock+0xc8 sys/uvm/uvm_glue.c:129 #2 sys_sysctl+0x2d8 sys/kern/kern_sysctl.c:240 #3 syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline] #3 syscall+0x489 sys/arch/amd64/amd64/trap.c:585 #4 Xsyscall+0x128 exclusive rwlock sysctllk r = 0 (0xffffffff82941f10) #0 witness_lock+0x44d #1 rw_enter+0x3e1 sys/kern/kern_rwlock.c:310 #2 sys_sysctl+0x1b3 sys/kern/kern_sysctl.c:233 #3 syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline] #3 syscall+0x489 sys/arch/amd64/amd64/trap.c:585 #4 Xsyscall+0x128 exclusive kernel_lock &kernel_lock r = 0 (0xffffffff829de988) #0 witness_lock+0x44d #1 syscall+0x3ef mi_syscall sys/sys/syscall_mi.h:93 [inline] #1 syscall+0x3ef sys/arch/amd64/amd64/trap.c:585 #2 Xsyscall+0x128 ddb{1}> show malloc Type InUse MemUse HighUse Limit Requests Type Lim devbuf 10169 6406K 6419K 78643K 11265 0 pcb 13 8K 8K 78643K 13 0 rtable 238 6K 7K 78643K 408 0 ifaddr 81 16K 16K 78643K 96 0 counters 56 35K 35K 78643K 60 0 ioctlops 0 0K 2K 78643K 35 0 mount 1 1K 1K 78643K 1 0 log 0 0K 0K 78643K 5 0 vnodes 1270 79K 79K 78643K 1310 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 125K 78643K 269 0 proc 56 74K 123K 78643K 540 0 subproc 104 6K 6K 78643K 130 0 NFS srvsock 1 0K 0K 78643K 1 0 NFS daemon 1 16K 16K 78643K 1 0 ip_moptions 0 0K 0K 78643K 26 0 in_multi 99 6K 6K 78643K 121 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 37 175K 175K 78643K 37 0 exec 0 0K 2K 78643K 652 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 7 26K 26K 78643K 7 0 UVM amap 258 79K 80K 78643K 4267 0 UVM aobj 3 2K 2K 78643K 3 0 memdesc 1 4K 4K 78643K 1 0 crypto data 1 1K 1K 78643K 1 0 ip6_options 0 0K 0K 78643K 4 0 NDP 13 0K 2K 78643K 33 0 temp 85 4694K 4757K 78643K 4673 0 kqueue 12 18K 20K 78643K 28 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 22 0 0 1 0 1 1 0 8 0 rtpcb 120 37 0 34 1 0 1 1 0 8 0 rtentry 112 133 0 23 4 0 4 4 0 8 0 unpcb 136 49 0 32 1 0 1 1 0 8 0 syncache 296 4 0 4 1 1 0 1 0 8 0 tcpcb 736 20 0 12 2 0 2 2 0 8 1 arp 120 22 0 4 1 0 1 1 0 8 0 inpcb 304 98 0 91 1 0 1 1 0 8 0 nd6 48 30 0 6 1 0 1 1 0 8 0 kcovpl 48 10 0 2 1 0 1 1 0 8 0 art_heap8 4096 1 0 0 1 0 1 1 0 8 0 art_heap4 256 541 0 88 29 0 29 29 0 8 0 art_table 32 542 0 88 4 0 4 4 0 8 0 art_node 16 132 0 32 1 0 1 1 0 8 0 dirhash 1024 17 0 0 3 0 3 3 0 8 0 dino2pl 256 1600 0 172 90 0 90 90 0 8 0 ffsino 272 1600 0 172 96 0 96 96 0 8 0 nchpl 144 1985 0 366 62 0 62 62 0 8 0 uvmvnodes 80 1739 0 0 36 0 36 36 0 8 0 vnodes 224 1739 0 0 103 0 103 103 0 8 0 namei 1024 6584 0 6584 2 0 2 2 0 8 2 percpumem 16 42 0 2 1 0 1 1 0 8 0 scxspl 216 6161 0 6161 2 1 1 2 0 8 1 plimitpl 152 38 0 16 1 0 1 1 0 8 0 sigapl 424 537 0 491 7 0 7 7 0 8 1 futexpl 64 398 0 398 1 0 1 1 0 8 1 knotepl 120 108 0 0 4 0 4 4 0 8 0 kqueuepl 216 25 0 17 1 0 1 1 0 8 0 pipepl 336 137 0 109 3 0 3 3 0 8 0 fdescpl 496 523 0 491 7 1 6 6 0 8 1 filepl 152 1770 0 1533 10 0 10 10 0 8 0 lockfpl 104 26 0 24 1 0 1 1 0 8 0 lockfspl 48 14 0 12 1 0 1 1 0 8 0 sessionpl 144 25 0 9 1 0 1 1 0 8 0 pgrppl 48 25 0 9 1 0 1 1 0 8 0 ucredpl 96 118 0 100 1 0 1 1 0 8 0 zombiepl 144 491 0 491 1 0 1 1 0 8 1 processpl 1064 537 0 491 5 1 4 4 0 8 0 procpl 672 648 0 589 6 0 6 6 0 8 0 sockpl 480 184 0 157 4 0 4 4 0 8 0 mcl8k 8192 4 0 0 1 0 1 1 0 8 0 mcl4k 4096 2 0 0 1 0 1 1 0 8 0 mcl2k 2048 116 0 0 14 0 14 14 0 8 0 mtagpl 96 1 0 0 1 0 1 1 0 8 0 mbufpl 256 329 0 0 21 0 21 21 0 8 0 bufpl 288 3813 0 158 262 0 262 262 0 8 0 anonpl 24 86171 0 78244 56 1 55 55 0 186 2 amapchunkpl 152 9161 0 8572 30 1 29 29 0 158 3 amappl16 200 518 0 349 11 1 10 10 0 8 0 amappl15 192 91 0 87 1 0 1 1 0 8 0 amappl14 184 23 0 21 2 1 1 1 0 8 0 amappl13 176 92 0 91 1 0 1 1 0 8 0 amappl12 168 28 0 23 2 1 1 1 0 8 0 amappl11 160 41 0 29 1 0 1 1 0 8 0 amappl10 152 100 0 91 1 0 1 1 0 8 0 amappl9 144 497 0 489 1 0 1 1 0 8 0 amappl8 136 603 0 562 2 0 2 2 0 8 0 amappl7 128 133 0 121 1 0 1 1 0 8 0 amappl6 120 230 0 207 2 0 2 2 0 8 1 amappl5 112 371 0 343 2 0 2 2 0 8 0 amappl4 104 822 0 797 2 0 2 2 0 8 1 amappl3 96 190 0 177 1 0 1 1 0 8 0 amappl2 88 513 0 471 3 0 3 3 0 8 1 amappl1 80 12319 0 11719 18 1 17 18 0 8 3 amappl 88 3836 0 3630 6 0 6 6 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 72 2 0 0 1 0 1 1 0 8 0 uaddrrnd 24 523 0 491 1 0 1 1 0 8 0 uaddrbest 32 2 0 0 1 0 1 1 0 8 0 uaddr 24 523 0 491 1 0 1 1 0 8 0 vmmpekpl 168 8422 0 8364 3 0 3 3 0 8 0 vmmpepl 168 49180 0 47046 111 0 111 111 0 357 7 vmsppl 368 522 0 491 4 0 4 4 0 8 0 rwobjpl 56 14410 0 11628 42 2 40 40 0 8 0 pdppl 4096 1053 0 982 118 37 81 95 0 8 10 pvpl 32 291781 0 279070 259 2 257 257 0 265 147 pmappl 248 522 0 491 4 1 3 3 0 8 0 extentpl 40 58 0 38 1 0 1 1 0 8 0 phpool 112 650 0 39 18 0 18 18 0 8 0 ddb{1}> machine ddbcpu 0 Stopped at x86_ipi_db+0x1a: addq $0x8,%rsp ddb{0}> trace x86_ipi_db(ffffffff829baff0) at x86_ipi_db+0x1a sys/arch/amd64/amd64/db_interface.c:393 x86_ipi_handler() at x86_ipi_handler+0xb7 sys/arch/amd64/amd64/ipi.c:106 Xresume_lapic_ipi() at Xresume_lapic_ipi+0x23 __sanitizer_cov_trace_pc() at __sanitizer_cov_trace_pc+0x28 kd_curproc sys/dev/kcov.c:577 [inline] __sanitizer_cov_trace_pc() at __sanitizer_cov_trace_pc+0x28 sys/dev/kcov.c:148 __mp_lock(ffffffff829de780) at __mp_lock+0x133 __mp_lock_spin sys/kern/kern_lock.c:116 [inline] __mp_lock(ffffffff829de780) at __mp_lock+0x133 sys/kern/kern_lock.c:147 intr_handler(ffff80002bd40cb0,ffff800000077500) at intr_handler+0x5e sys/arch/amd64/amd64/intr.c:532 Xintr_ioapic_edge16_untramp() at Xintr_ioapic_edge16_untramp+0x18f __mp_lock(ffffffff829de780) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline] __mp_lock(ffffffff829de780) at __mp_lock+0x122 sys/kern/kern_lock.c:147 softintr_dispatch(0) at softintr_dispatch+0x4e sys/arch/amd64/amd64/softintr.c:88 Xsoftclock() at Xsoftclock+0x1f __mp_lock(ffffffff829de780) at __mp_lock+0x122 __mp_lock_spin sys/kern/kern_lock.c:116 [inline] __mp_lock(ffffffff829de780) at __mp_lock+0x122 sys/kern/kern_lock.c:147 syscall(ffff80002bd40fe0) at syscall+0x3ef mi_syscall sys/sys/syscall_mi.h:93 [inline] syscall(ffff80002bd40fe0) at syscall+0x3ef sys/arch/amd64/amd64/trap.c:585 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0x7f7ffffe4360, count: -13 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:440 witness_checkorder(fffffd806c6df058,9,0) at witness_checkorder+0x10b7 witness_debugger sys/kern/subr_witness.c:2502 [inline] witness_checkorder(fffffd806c6df058,9,0) at witness_checkorder+0x10b7 sys/kern/subr_witness.c:1105 rw_enter_write(fffffd806c6df048) at rw_enter_write+0x5b sys/kern/kern_rwlock.c:128 fill_file(ffff800000bfcc00,fffffd806e616698,fffffd806c6df000,0,0,ffff80002bd394e8,4409f23d72fc35cb,4a00,0) at fill_file+0xad2 sys/kern/kern_sysctl.c:1304 sysctl_file(ffff80002a106ea8,4,20000080,ffff80002a106ed8,ffff8000260ab270) at sysctl_file+0x62d sys/kern/kern_sysctl.c:1457 kern_sysctl(ffff80002a106ea4,5,20000080,ffff80002a106ed8,0,0,b5a2fd328e5d2933) at kern_sysctl+0xfd sys/kern/kern_sysctl.c:449 sys_sysctl(ffff8000260ab270,ffff80002a106f48,ffff80002a106fa0) at sys_sysctl+0x209 sys/kern/kern_sysctl.c:249 syscall(ffff80002a107010) at syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline] syscall(ffff80002a107010) at syscall+0x489 sys/arch/amd64/amd64/trap.c:585 Xsyscall() at Xsyscall+0x128 end of kernel end trace frame: 0xfc80ef86c40, count: -9