syzbot


panic: acquiring blockable sleep lock with spinlock or critical section held (kernelp_alonicck): &kkerernnelel d_ilao

Status: fixed on 2022/03/24 08:53
Reported-by: syzbot+a0a333f558c7f60e9276@syzkaller.appspotmail.com
Fix commit: d25fea59a0de For raw IP packets rip_input() traverses the loop of all PCBs. From there it calls sbappendaddr() while holding the raw table mutex. This ends in sorwakeup() where we finally grab the kernel lock while holding a mutex. Witness detects this misuse. Use the same solution as for PCB notify. Collect the affected PCBs in a temporary list. The list is protected by exclusive net lock. syzbot+ebe3f03a472fecf5e42e@syzkaller.appspotmail.com OK claudio@
First crash: 250d, last: 250d

Sample crash report:
panic: acquiring blockable sleep lock with spinlock or critical section held (kernelp_alonicck):    &kkerernnelel d_ilaogcnk
osStopped at      db_enter+0x18:  addq    $0x8,%rsp
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
  41095  57940      0           0  0x4000000    1  syz-executor.7
*161769  50773      0           0  0x4000000    0  syz-executor.0
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:440
panic(ffffffff825a2db5) at panic+0x177 sys/kern/subr_prf.c:202
witness_checkorder(ffffffff829f3ad8,9,0) at witness_checkorder+0x116d sys/kern/subr_witness.c:833
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 read_rflags machine/cpufunc.h:195 [inline]
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 intr_disable machine/cpufunc.h:216 [inline]
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 sys/kern/kern_lock.c:142
selwakeup(fffffd8070aa0310) at selwakeup+0x16 klist_empty sys/sys/event.h:361 [inline]
selwakeup(fffffd8070aa0310) at selwakeup+0x16 sys/kern/sys_generic.c:885
sorwakeup(fffffd8070aa01f8) at sorwakeup+0xc9 sys/kern/uipc_socket.c:1699
rip_input(ffff800022c44788,ffff800022c44794,0,2) at rip_input+0x3b0 sys/netinet/raw_ip.c:188
ip_deliver(ffff800022c44788,ffff800022c44794,0,2) at ip_deliver+0x322 sys/netinet/ip_input.c:657
ip_ours(ffff800022c44788,ffff800022c44794,ffff800021239000,0) at ip_ours+0x3ba sys/netinet/ip_input.c:616
ip_input_if(ffff800022c44788,ffff800022c44794,4,0,ffff800000689000) at ip_input_if+0x2a1
ipv4_input(ffff800000689000,fffffd806e1b5700) at ipv4_input+0x48 sys/netinet/ip_input.c:242
if_input_local(ffff800000689000,fffffd806e1b5700,2) at if_input_local+0x10e sys/net/if.c:774
ip_output(fffffd8068f0ad00,0,fffffd806f67d420,20,0,fffffd806f67d3a8,7e3f19724a24985d) at ip_output+0xb05 ip_mloopback sys/netinet/ip_output.c:1791 [inline]
ip_output(fffffd8068f0ad00,0,fffffd806f67d420,20,0,fffffd806f67d3a8,7e3f19724a24985d) at ip_output+0xb05 sys/netinet/ip_output.c:332
rip_output(fffffd8068f0ad00,fffffd8070aa05b8,ffff800022c449e0,103) at rip_output+0x2cb sys/netinet/raw_ip.c:302
end trace frame: 0xffff800022c44a60, count: 0
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{0}> 
ddb{0}> set $lines = 0
ddb{0}> set $maxwidth = 0
ddb{0}> show panic
*cpu0: acquiring blockable sleep lock with spinlock or critical section held (kernel_lock) &kernel_lock
 cpu1: kernel diagnostic assertion "!_kernel_lock_held()" failed: file "/syzkaller/managers/multicore/kernel/sys/kern/kern_fork.c", line 678
ddb{0}> trace
db_enter() at db_enter+0x18 sys/arch/amd64/amd64/db_interface.c:440
panic(ffffffff825a2db5) at panic+0x177 sys/kern/subr_prf.c:202
witness_checkorder(ffffffff829f3ad8,9,0) at witness_checkorder+0x116d sys/kern/subr_witness.c:833
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 read_rflags machine/cpufunc.h:195 [inline]
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 intr_disable machine/cpufunc.h:216 [inline]
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 sys/kern/kern_lock.c:142
selwakeup(fffffd8070aa0310) at selwakeup+0x16 klist_empty sys/sys/event.h:361 [inline]
selwakeup(fffffd8070aa0310) at selwakeup+0x16 sys/kern/sys_generic.c:885
sorwakeup(fffffd8070aa01f8) at sorwakeup+0xc9 sys/kern/uipc_socket.c:1699
rip_input(ffff800022c44788,ffff800022c44794,0,2) at rip_input+0x3b0 sys/netinet/raw_ip.c:188
ip_deliver(ffff800022c44788,ffff800022c44794,0,2) at ip_deliver+0x322 sys/netinet/ip_input.c:657
ip_ours(ffff800022c44788,ffff800022c44794,ffff800021239000,0) at ip_ours+0x3ba sys/netinet/ip_input.c:616
ip_input_if(ffff800022c44788,ffff800022c44794,4,0,ffff800000689000) at ip_input_if+0x2a1
ipv4_input(ffff800000689000,fffffd806e1b5700) at ipv4_input+0x48 sys/netinet/ip_input.c:242
if_input_local(ffff800000689000,fffffd806e1b5700,2) at if_input_local+0x10e sys/net/if.c:774
ip_output(fffffd8068f0ad00,0,fffffd806f67d420,20,0,fffffd806f67d3a8,7e3f19724a24985d) at ip_output+0xb05 ip_mloopback sys/netinet/ip_output.c:1791 [inline]
ip_output(fffffd8068f0ad00,0,fffffd806f67d420,20,0,fffffd806f67d3a8,7e3f19724a24985d) at ip_output+0xb05 sys/netinet/ip_output.c:332
rip_output(fffffd8068f0ad00,fffffd8070aa05b8,ffff800022c449e0,103) at rip_output+0x2cb sys/netinet/raw_ip.c:302
rip_usrreq(fffffd8070aa05b8,9,fffffd8068f0ad00,0,0,ffff8000ffff07e8) at rip_usrreq+0x49c sys/netinet/raw_ip.c:554
sosend(fffffd8070aa05b8,0,ffff800022c44c70,0,0,0) at sosend+0x632 sys/kern/uipc_socket.c:582
dofilewritev(ffff8000ffff07e8,5,ffff800022c44c70,0,ffff800022c44d70) at dofilewritev+0x19c sys/kern/sys_generic.c:381
sys_writev(ffff8000ffff07e8,ffff800022c44d18,ffff800022c44d70) at sys_writev+0xa7 sys/kern/sys_generic.c:328
syscall(ffff800022c44de0) at syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline]
syscall(ffff800022c44de0) at syscall+0x489 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xb605a9de510, count: -20
ddb{0}> show registers
rdi                                0
rsi                              0x1
rbp               0xffff800022c44310
rbx               0xffffffff8298dbff    cpu_info_full_primary+0x2bff
rdx               0xffff800000bdae80
rcx                                0
rax               0xffff8000ffff07e8
r8                 0x101010101010101
r9                0x8080808080808080
r10                0xcbc98740f47490e
r11               0x41f6b963597d5649
r12               0xffffffff8298da00    cpu_info_full_primary+0x2a00
r13                                0
r14                                0
r15                              0x1
rip               0xffffffff811e4c58    db_enter+0x18
cs                               0x8
rflags                         0x246
rsp               0xffff800022c44300
ss                              0x10
db_enter+0x18:  addq    $0x8,%rsp
ddb{0}> show proc
PROC (syz-executor.0) pid=161769 stat=onproc
    flags process=0 proc=4000000<THREAD>
    pri=32, usrpri=86, nice=20
    forw=0xffffffffffffffff, list=0xffff8000ffff22a0,0xffff8000ffff0558
    process=0xffff8000fffef620 user=0xffff800022c3f000, vmspace=0xfffffd806a881b90
    estcpu=36, cpticks=3, pctcpu=0.0
    user=0, sys=2, intr=0
ddb{0}> ps
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
 57940  227610  88866      0  2           0                syz-executor.7
 57940   41095  88866      0  7   0x4000000                syz-executor.7
 27640  236183  13851  60928  2        0x10                syz-executor.4
 27640   35848  13851  60928  3   0x4000090  fsleep        syz-executor.4
 60962  364445  52462      0  3        0x80  nanoslp       syz-executor.1
 60962  454386  52462      0  3   0x4000080  fsleep        syz-executor.1
 60962  492543  52462      0  3   0x4000080  fsleep        syz-executor.1
 60962  246708  52462      0  3   0x4000080  fsleep        syz-executor.1
 14626   89613  65606      0  2           0                syz-executor.5
 50773  513683  58677      0  2           0                syz-executor.0
*50773  161769  58677      0  7   0x4000000                syz-executor.0
  8331  306165  68779      0  2           0                syz-executor.3
  8331   97344  68779      0  3   0x4000080  fsleep        syz-executor.3
 42622  137717  12606      0  2           0                syz-executor.6
 42622  335774  12606      0  3   0x4000080  nanoslp       syz-executor.6
 52462  467386  83703      0  3        0x82  nanoslp       syz-executor.1
 13989  262859      0      0  3     0x14200  bored         sosplice
  7546  491611  83703      0  3         0x2  biowait       syz-executor.2
 88866  159093  83703      0  3        0x82  nanoslp       syz-executor.7
 68779  405475  83703      0  3        0x82  nanoslp       syz-executor.3
 12606  181118  83703      0  3        0x82  nanoslp       syz-executor.6
 13851   60092  83703      0  3        0x82  nanoslp       syz-executor.4
 65606  459887  83703      0  3        0x82  nanoslp       syz-executor.5
 58677  177558  83703      0  3        0x82  nanoslp       syz-executor.0
 83703   94815  58409      0  3        0x82  thrsleep      syz-fuzzer
 83703  471542  58409      0  3   0x4000082  nanoslp       syz-fuzzer
 83703  475281  58409      0  3   0x4000082  thrsleep      syz-fuzzer
 83703  457619  58409      0  3   0x4000082  thrsleep      syz-fuzzer
 83703  497126  58409      0  3   0x4000082  kqread        syz-fuzzer
 83703  250715  58409      0  3   0x4000082  thrsleep      syz-fuzzer
 83703  355692  58409      0  3   0x4000082  thrsleep      syz-fuzzer
 83703  469400  58409      0  3   0x4000082  thrsleep      syz-fuzzer
 83703  463069  58409      0  3   0x4000082  thrsleep      syz-fuzzer
 58409  225999  16167      0  3    0x10008a  sigsusp       ksh
 16167  313337  52225      0  3        0x9a  kqread        sshd
 97667  133765      1      0  3    0x100083  ttyin         getty
 52225  456875      1      0  3        0x88  kqread        sshd
  9598  387295  10055     74  3   0x1100092  bpf           pflogd
 10055  276866      1      0  3        0x80  netio         pflogd
 82712   18400  43115     73  3   0x1100010  biowait       syslogd
 43115  348989      1      0  3    0x100082  netio         syslogd
  5929  485113      1      0  3    0x100080  kqread        resolvd
 41259  476273  84185     77  3    0x100092  kqread        dhcpleased
 27950  200316  84185     77  3    0x100092  kqread        dhcpleased
 84185  244618      1      0  3        0x80  kqread        dhcpleased
 82218  282812      0      0  3     0x14200  bored         smr
 23867  220330      0      0  2     0x14200                zerothread
 57573  110796      0      0  3     0x14200  aiodoned      aiodoned
 24396  339116      0      0  3     0x14200  syncer        update
 49272  380580      0      0  3     0x14200  cleaner       cleaner
 83734  429126      0      0  3     0x14200  reaper        reaper
 56256   52914      0      0  3     0x14200  pgdaemon      pagedaemon
 91001  334344      0      0  3     0x14200  bored         viomb
 24417   91204      0      0  3  0x40014200  acpi0         acpi0
 18430  234436      0      0  3  0x40014200                idle1
 63359    2091      0      0  3     0x14200  bored         softnet
 30934  462995      0      0  3     0x14200  bored         systqmp
 35540  443301      0      0  3     0x14200  bored         systq
 15264  227247      0      0  3  0x40014200  bored         softclock
 98348  440467      0      0  3  0x40014200                idle0
     1  206234      0      0  3        0x82  wait          init
     0       0     -1      0  3     0x10200  scheduler     swapper
ddb{0}> show all locks
CPU 0:
exclusive mutex &table->inpt_mtx r = 0 (0xffffffff82b03010)
#0  witness_lock+0x44d
#1  mtx_enter_try+0x100
#2  mtx_enter+0x4b sys/kern/kern_lock.c:266
#3  rip_input+0x135
#4  ip_deliver+0x322 sys/netinet/ip_input.c:657
#5  ip_ours+0x3ba sys/netinet/ip_input.c:616
#6  ip_input_if+0x2a1
#7  ipv4_input+0x48 sys/netinet/ip_input.c:242
#8  if_input_local+0x10e sys/net/if.c:774
#9  ip_output+0xb05 ip_mloopback sys/netinet/ip_output.c:1791 [inline]
#9  ip_output+0xb05 sys/netinet/ip_output.c:332
#10 rip_output+0x2cb sys/netinet/raw_ip.c:302
#11 rip_usrreq+0x49c sys/netinet/raw_ip.c:554
#12 sosend+0x632 sys/kern/uipc_socket.c:582
#13 dofilewritev+0x19c sys/kern/sys_generic.c:381
#14 sys_writev+0xa7 sys/kern/sys_generic.c:328
#15 syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline]
#15 syscall+0x489 sys/arch/amd64/amd64/trap.c:585
#16 Xsyscall+0x128
Process 57940 (syz-executor.7) thread 0xffff80002e3517b0 (227610)
exclusive rwlock uobjlk r = 0 (0xfffffd806a7aa558)
#0  witness_lock+0x44d
#1  rw_enter+0x3e1 sys/kern/kern_rwlock.c:310
#2  uvm_fault_lower_lookup+0x46 sys/uvm/uvm_fault.c:1117
#3  uvm_fault_lower+0x5f sys/uvm/uvm_fault.c:1218
#4  uvm_fault+0x248
#5  upageflttrap+0x82 sys/arch/amd64/amd64/trap.c:181
#6  usertrap+0x1aa sys/arch/amd64/amd64/trap.c:403
#7  recall_trap+0x8
shared rwlock vmmaplk r = 0 (0xfffffd807578b310)
#0  witness_lock+0x44d
#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  upageflttrap+0x82 sys/arch/amd64/amd64/trap.c:181
#5  usertrap+0x1aa sys/arch/amd64/amd64/trap.c:403
#6  recall_trap+0x8
Process 50773 (syz-executor.0) thread 0xffff8000ffff07e8 (161769)
exclusive rwlock netlock r = 0 (0xffffffff82904160)
#0  witness_lock+0x44d
#1  solock+0x86 sys/kern/uipc_socket2.c:295
#2  sosend+0x517 sys/kern/uipc_socket.c:570
#3  dofilewritev+0x19c sys/kern/sys_generic.c:381
#4  sys_writev+0xa7 sys/kern/sys_generic.c:328
#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
exclusive mutex &table->inpt_mtx r = 0 (0xffffffff82b03010)
#0  witness_lock+0x44d
#1  mtx_enter_try+0x100
#2  mtx_enter+0x4b sys/kern/kern_lock.c:266
#3  rip_input+0x135
#4  ip_deliver+0x322 sys/netinet/ip_input.c:657
#5  ip_ours+0x3ba sys/netinet/ip_input.c:616
#6  ip_input_if+0x2a1
#7  ipv4_input+0x48 sys/netinet/ip_input.c:242
#8  if_input_local+0x10e sys/net/if.c:774
#9  ip_output+0xb05 ip_mloopback sys/netinet/ip_output.c:1791 [inline]
#9  ip_output+0xb05 sys/netinet/ip_output.c:332
#10 rip_output+0x2cb sys/netinet/raw_ip.c:302
#11 rip_usrreq+0x49c sys/netinet/raw_ip.c:554
#12 sosend+0x632 sys/kern/uipc_socket.c:582
#13 dofilewritev+0x19c sys/kern/sys_generic.c:381
#14 sys_writev+0xa7 sys/kern/sys_generic.c:328
#15 syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline]
#15 syscall+0x489 sys/arch/amd64/amd64/trap.c:585
#16 Xsyscall+0x128
Process 7546 (syz-executor.2) thread 0xffff8000ffff37a0 (491611)
exclusive rrwlock inode r = 0 (0xfffffd80669b44e8)
#0  witness_lock+0x44d
#1  rw_enter+0x3e1 sys/kern/kern_rwlock.c:310
#2  rrw_enter+0x8b sys/kern/kern_rwlock.c:461
#3  VOP_LOCK+0x87 sys/kern/vfs_vops.c:534
#4  ufs_ihashins+0x42 sys/ufs/ufs/ufs_ihash.c:140
#5  ffs_vget+0x141 sys/ufs/ffs/ffs_vfsops.c:1347
#6  ffs_inode_alloc+0x1be sys/ufs/ffs/ffs_alloc.c:394
#7  ufs_mkdir+0xf4 sys/ufs/ufs/ufs_vnops.c:1162
#8  VOP_MKDIR+0xbf sys/kern/vfs_vops.c:404
#9  domkdirat+0x121 sys/kern/vfs_syscalls.c:3101
#10 syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline]
#10 syscall+0x489 sys/arch/amd64/amd64/trap.c:585
#11 Xsyscall+0x128
exclusive rrwlock inode r = 0 (0xfffffd807ca49c48)
#0  witness_lock+0x44d
#1  rw_enter+0x3e1 sys/kern/kern_rwlock.c:310
#2  rrw_enter+0x8b sys/kern/kern_rwlock.c:461
#3  VOP_LOCK+0x87 sys/kern/vfs_vops.c:534
#4  vn_lock+0x84 sys/kern/vfs_vnops.c:579
#5  vfs_lookup+0xd1 sys/kern/vfs_lookup.c:413
#6  namei+0x36a sys/kern/vfs_lookup.c:245
#7  domkdirat+0x75 sys/kern/vfs_syscalls.c:3086
#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
Process 82712 (syslogd) thread 0xffff800021182a90 (18400)
exclusive rrwlock inode r = 0 (0xfffffd806e740700)
#0  witness_lock+0x44d
#1  rw_enter+0x3e1 sys/kern/kern_rwlock.c:310
#2  rrw_enter+0x8b sys/kern/kern_rwlock.c:461
#3  VOP_LOCK+0x87 sys/kern/vfs_vops.c:534
#4  vn_lock+0x84 sys/kern/vfs_vnops.c:579
#5  sys_fsync+0xf5 sys/kern/vfs_syscalls.c:2924
#6  syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline]
#6  syscall+0x489 sys/arch/amd64/amd64/trap.c:585
#7  Xsyscall+0x128
ddb{0}> show malloc
           Type InUse  MemUse  HighUse   Limit  Requests Type Lim
         devbuf 10217   6542K    6737K  78643K     11783        0
            pcb    13     10K      11K  78643K        74        0
         rtable   222      7K       8K  78643K       479        0
         ifaddr    87     17K      18K  78643K       184        0
         sysctl     2      0K       0K  78643K         2        0
       counters    56     35K      36K  78643K        86        0
       ioctlops     0      0K       4K  78643K      1709        0
            iov     0      0K      12K  78643K        81        0
          mount     1      1K       1K  78643K         1        0
            log     0      0K       0K  78643K         4        0
         vnodes  1276     80K      80K  78643K      1721        0
      UFS quota     1     32K      32K  78643K         1        0
      UFS mount     5     36K      36K  78643K         5        0
            shm     2      1K       5K  78643K         8        0
         VM map     2      1K       1K  78643K         2        0
            sem    12      0K       0K  78643K        16        0
        dirhash    12      2K       2K  78643K        12        0
           ACPI  1697    195K     286K  78643K     12548        0
      file desc    17     61K      85K  78643K       739        0
          sigio     0      0K       0K  78643K         1        0
           proc    70     87K     124K  78643K       583        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        31        0
       in_multi    84      5K       6K  78643K       127        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   223    996K     996K  78643K       223        0
           exec     0      0K       2K  78643K       798        0
     pfkey data     0      0K       0K  78643K         2        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   356    228K     230K  78643K     11051        0
       UVM aobj   131      4K       4K  78643K       131        0
        memdesc     1      4K       4K  78643K         1        0
    crypto data     1      1K       1K  78643K         1        0
    ip6_options     0      0K       0K  78643K        64        0
            NDP    13      0K       1K  78643K        49        0
           temp    96   4698K    4762K  78643K      8034        0
         kqueue    12     18K      22K  78643K        52        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       22    0        0     1     0     1     1     0     8    0
rtpcb      120       51    0       48     1     0     1     1     0     8    0
rtentry    112      144    0       44     4     0     4     4     0     8    0
unpcb      136      368    0      353     5     2     3     3     0     8    2
syncache   296        6    0        6     3     2     1     1     0     8    1
tcpqe       32       55    0       55     1     1     0     1     0     8    0
tcpcb      736      358    0      352    15     7     8     8     0     8    7
arp        120       25    0        7     1     0     1     1     0     8    0
inpcb      312      923    0      911    17    11     6     9     0     8    5
nd6         48       31    0       12     1     0     1     1     0     8    0
pkpcb       40       11    0       11     2     1     1     1     0     8    1
kcovpl      48       10    0        2     1     0     1     1     0     8    0
ppxss      1248       5    0        5     1     0     1     1     0     8    1
pfstscr     40       11    0       11     3     2     1     1     0     8    1
pffrag     232        1    0        1     1     0     1     1     0   482    1
pffrnode    88        1    0        1     1     0     1     1     0     8    1
pffrent     40        6    0        6     1     0     1     1     0     8    1
pfosfp      40     1428    0     1005     5     0     5     5     0     8    0
pfosfpen   112     1428    0      714    21     0    21    21     0     8    0
pfrktable  1344      12    0       12     1     1     0     1     0     8    0
pfstitem    24       25    0       23     1     0     1     1     0     8    0
pfstkey    112       39    0       37     1     0     1     1     0     8    0
pfstate    320       31    0       29     2     1     1     2     0     8    0
pfrule     1360      38    0       30     2     1     1     2     0     8    0
art_heap8  4096       1    0        0     1     0     1     1     0     8    0
art_heap4  256      591    0      183    29     2    27    29     0     8    0
art_table   32      592    0      183     4     0     4     4     0     8    0
art_node    16      143    0       51     1     0     1     1     0     8    0
sysvmsgpl   40        6    0        0     1     0     1     1     0     8    0
semapl     112       14    0        4     1     0     1     1     0     8    0
shmpl      112      128    0        0     4     0     4     4     0     8    0
dirhash    1024      17    0        0     3     0     3     3     0     8    0
dino2pl    256     2500    0     1061    91     0    91    91     0     8    0
ffsino     272     2500    0     1061    97     0    97    97     0     8    0
nchpl      144     3550    0     1919    63     0    63    63     0     8    0
uvmvnodes   80     2728    0        0    56     0    56    56     0     8    0
vnodes     224     2728    0        0   161     0   161   161     0     8    0
namei      1024   13801    0    13800     3     2     1     2     0     8    0
percpumem   16       55    0       15     1     0     1     1     0     8    0
vcpupl     2048      10    0        0     2     0     2     2     0     8    0
vmpool     560       10    0        0     1     0     1     1     0     8    0
pfiaddrpl  120        4    0        4     1     1     0     1     0     8    0
scxspl     216    13853    0    13851     9     8     1     8     0     8    0
plimitpl   152      176    0      161     1     0     1     1     0     8    0
sigapl     424     1049    0     1004     6     0     6     6     0     8    0
futexpl     64     5899    0     5894     2     1     1     1     0     8    0
knotepl    120      111    0        0     4     0     4     4     0     8    0
kqueuepl   216      437    0      428    11     8     3     5     0     8    2
pipepl     336      245    0      217     6     3     3     6     0     8    0
fdescpl    496     1034    0     1004     5     0     5     5     0     8    0
filepl     152     7505    0     7253    29    14    15    18     0     8    5
lockfpl    104      473    0      470     3     2     1     2     0     8    0
lockfspl    48       43    0       40     1     0     1     1     0     8    0
sessionpl  144       26    0        9     1     0     1     1     0     8    0
pgrppl      48       26    0        9     1     0     1     1     0     8    0
ucredpl     96     1665    0     1652     1     0     1     1     0     8    0
zombiepl   144     1004    0     1004     1     0     1     1     0     8    1
processpl  1064    1049    0     1004     4     0     4     4     0     8    0
procpl     672     2266    0     2205     9     3     6     8     0     8    0
srpgc       96        6    0        6     2     2     0     1     0     8    0
sosppl     168       10    0       10     1     1     0     1     0     8    0
sockpl     480     1353    0     1325    35    23    12    16     0     8    8
mcl64k     65536      7    0        0     1     0     1     1     0     8    0
mcl16k     16384      2    0        0     1     0     1     1     0     8    0
mcl12k     12288     10    0        0     1     0     1     1     0     8    0
mcl9k      9216       2    0        0     1     0     1     1     0     8    0
mcl8k      8192       7    0        0     1     0     1     1     0     8    0
mcl4k      4096      14    0        0     2     0     2     2     0     8    0
mcl2k2     2112       2    0        0     1     0     1     1     0     8    0
mcl2k      2048     192    0        0    23     0    23    23     0     8    0
mtagpl      96       11    0        0     1     0     1     1     0     8    0
mbufpl     256      283    0        0    16     0    16    16     0     8    0
bufpl      288     4877    0      152   338     0   338   338     0     8    0
anonpl      24   263443    0   244264   153     5   148   148     0   186   29
amapchunkpl 152   26574    0    25713    50     3    47    47     0   158   12
amappl16   200     2795    0     2194    46     5    41    45     0     8    8
amappl15   192      362    0      355     1     0     1     1     0     8    0
amappl14   184       82    0       78     1     0     1     1     0     8    0
amappl13   176      159    0      157     1     0     1     1     0     8    0
amappl12   168      109    0      106     1     0     1     1     0     8    0
amappl11   160       62    0       48     1     0     1     1     0     8    0
amappl10   152      169    0      161     1     0     1     1     0     8    0
amappl9    144      560    0      555     1     0     1     1     0     8    0
amappl8    136      668    0      613     2     0     2     2     0     8    0
amappl7    128      132    0      119     1     0     1     1     0     8    0
amappl6    120      292    0      270     2     1     1     2     0     8    0
amappl5    112      783    0      757     1     0     1     1     0     8    0
amappl4    104      975    0      946     2     0     2     2     0     8    0
amappl3     96      292    0      278     1     0     1     1     0     8    0
amappl2     88      754    0      707     3     1     2     3     0     8    0
amappl1     80    21889    0    21298    19     5    14    19     0     8    0
amappl      88    10530    0    10264     7     0     7     7     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      130    0        0     3     0     3     3     0     8    0
uaddrrnd    24     1044    0     1004     1     0     1     1     0     8    0
uaddrbest   32        2    0        0     1     0     1     1     0     8    0
uaddr       24     1044    0     1004     1     0     1     1     0     8    0
vmmpekpl   168    12778    0    12712     4     0     4     4     0     8    0
vmmpepl    168    98776    0    96163   145    16   129   129     0   357   12
vmsppl     368     1043    0     1004     4     0     4     4     0     8    0
rwobjpl     56    27999    0    23534    65     0    65    65     0     8    0
pdppl      4096    2095    0     2018   161    82    79    79     0     8    2
pvpl        32   578680    0   555063   307    52   255   266     0   265   59
pmappl     248     1043    0     1004     3     0     3     3     0     8    0
extentpl    40       58    0       38     1     0     1     1     0     8    0
phpool     112      816    0      110    21     0    21    21     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:440
panic(ffffffff825a2db5) at panic+0x177 sys/kern/subr_prf.c:202
witness_checkorder(ffffffff829f3ad8,9,0) at witness_checkorder+0x116d sys/kern/subr_witness.c:833
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 read_rflags machine/cpufunc.h:195 [inline]
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 intr_disable machine/cpufunc.h:216 [inline]
__mp_lock(ffffffff829f38d0) at __mp_lock+0xa1 sys/kern/kern_lock.c:142
selwakeup(fffffd8070aa0310) at selwakeup+0x16 klist_empty sys/sys/event.h:361 [inline]
selwakeup(fffffd8070aa0310) at selwakeup+0x16 sys/kern/sys_generic.c:885
sorwakeup(fffffd8070aa01f8) at sorwakeup+0xc9 sys/kern/uipc_socket.c:1699
rip_input(ffff800022c44788,ffff800022c44794,0,2) at rip_input+0x3b0 sys/netinet/raw_ip.c:188
ip_deliver(ffff800022c44788,ffff800022c44794,0,2) at ip_deliver+0x322 sys/netinet/ip_input.c:657
ip_ours(ffff800022c44788,ffff800022c44794,ffff800021239000,0) at ip_ours+0x3ba sys/netinet/ip_input.c:616
ip_input_if(ffff800022c44788,ffff800022c44794,4,0,ffff800000689000) at ip_input_if+0x2a1
ipv4_input(ffff800000689000,fffffd806e1b5700) at ipv4_input+0x48 sys/netinet/ip_input.c:242
if_input_local(ffff800000689000,fffffd806e1b5700,2) at if_input_local+0x10e sys/net/if.c:774
ip_output(fffffd8068f0ad00,0,fffffd806f67d420,20,0,fffffd806f67d3a8,7e3f19724a24985d) at ip_output+0xb05 ip_mloopback sys/netinet/ip_output.c:1791 [inline]
ip_output(fffffd8068f0ad00,0,fffffd806f67d420,20,0,fffffd806f67d3a8,7e3f19724a24985d) at ip_output+0xb05 sys/netinet/ip_output.c:332
rip_output(fffffd8068f0ad00,fffffd8070aa05b8,ffff800022c449e0,103) at rip_output+0x2cb sys/netinet/raw_ip.c:302
rip_usrreq(fffffd8070aa05b8,9,fffffd8068f0ad00,0,0,ffff8000ffff07e8) at rip_usrreq+0x49c sys/netinet/raw_ip.c:554
sosend(fffffd8070aa05b8,0,ffff800022c44c70,0,0,0) at sosend+0x632 sys/kern/uipc_socket.c:582
dofilewritev(ffff8000ffff07e8,5,ffff800022c44c70,0,ffff800022c44d70) at dofilewritev+0x19c sys/kern/sys_generic.c:381
sys_writev(ffff8000ffff07e8,ffff800022c44d18,ffff800022c44d70) at sys_writev+0xa7 sys/kern/sys_generic.c:328
syscall(ffff800022c44de0) at syscall+0x489 mi_syscall sys/sys/syscall_mi.h:102 [inline]
syscall(ffff800022c44de0) at syscall+0x489 sys/arch/amd64/amd64/trap.c:585
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0xb605a9de510, count: -20
ddb{0}> machine ddbcpu 1
Stopped at      x86_ipi_db+0x1a:        addq    $0x8,%rsp
x86_ipi_db(ffff800020ce8ff0) 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_const_cmp1(0,20) at __sanitizer_cov_trace_const_cmp1+0x31 kd_curproc sys/dev/kcov.c:578 [inline]
__sanitizer_cov_trace_const_cmp1(0,20) at __sanitizer_cov_trace_const_cmp1+0x31 sys/dev/kcov.c:213
comcnputc(800,74) at comcnputc+0xa7 sys/dev/ic/com.c:1259
cnputc(74) at cnputc+0x4b sys/dev/cons.c:239
db_putchar(74) at db_putchar+0x3fc sys/ddb/db_output.c:155
kprintf() at kprintf+0x20ec sys/kern/subr_prf.c:1068
db_printf(ffffffff82608c08) at db_printf+0x85 sys/kern/subr_prf.c:502
panic(ffffffff8258fc0f) at panic+0xd7 sys/kern/subr_prf.c:220
__assert(ffffffff826026c6,ffffffff825e4e08,2a6,ffffffff825be35d) at __assert+0x25 sys/kern/subr_prf.c:161
proc_trampoline_mp() at proc_trampoline_mp+0x131
end trace frame: 0x0, count: 3
ddb{1}> trace
x86_ipi_db(ffff800020ce8ff0) 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_const_cmp1(0,20) at __sanitizer_cov_trace_const_cmp1+0x31 kd_curproc sys/dev/kcov.c:578 [inline]
__sanitizer_cov_trace_const_cmp1(0,20) at __sanitizer_cov_trace_const_cmp1+0x31 sys/dev/kcov.c:213
comcnputc(800,74) at comcnputc+0xa7 sys/dev/ic/com.c:1259
cnputc(74) at cnputc+0x4b sys/dev/cons.c:239
db_putchar(74) at db_putchar+0x3fc sys/ddb/db_output.c:155
kprintf() at kprintf+0x20ec sys/kern/subr_prf.c:1068
db_printf(ffffffff82608c08) at db_printf+0x85 sys/kern/subr_prf.c:502
panic(ffffffff8258fc0f) at panic+0xd7 sys/kern/subr_prf.c:220
__assert(ffffffff826026c6,ffffffff825e4e08,2a6,ffffffff825be35d) at __assert+0x25 sys/kern/subr_prf.c:161
proc_trampoline_mp() at proc_trampoline_mp+0x131
end trace frame: 0x0, count: -12

Crashes (1):
Manager Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Title
ci-openbsd-multicore 2022/03/22 17:41 openbsd 63abc0ec39b5 d88ef0c5 .config log report panic: acquiring blockable sleep lock with spinlock or critical section held (kernelp_alonicck): &kkerernnelel d_ilao
* Struck through repros no longer work on HEAD.