syzbot


protection_fault: witness_checkorder (3)

Status: upstream: reported on 2024/03/04 14:38
Reported-by: syzbot+ee38e3c4c94025416b86@syzkaller.appspotmail.com
First crash: 55d, last: 55d
Similar bugs (2)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
openbsd protection_fault: witness_checkorder (2) C 311 172d 288d 0/3 auto-obsoleted due to no activity on 2023/12/28 01:55
openbsd protection_fault: witness_checkorder 1 607d 607d 0/3 auto-obsoleted due to no activity on 2022/11/27 19:38

Sample crash report:
kernel: protection fault trap, code=0
Stopped at      witness_checkorder+0x1ec:       movl    0x8(%r14),%ebx
ddb{0}> 
ddb{0}> set $lines = 0
ddb{0}> set $maxwidth = 0
ddb{0}> show panic
the kernel did not panic
ddb{0}> trace
witness_checkorder(ffff800000e4b4b0,9,0) at witness_checkorder+0x1ec sys/kern/subr_witness.c:794
rw_enter(ffff800000e4b4a0,1) at rw_enter+0xd5 sys/kern/kern_rwlock.c:249
rwsleep(ffff800000e4b640,ffff800000e4b4a0,118,ffffffff8292b56b,0) at rwsleep+0xd6 sys/kern/kern_synch.c:303
sosend(ffff800000e4b498,0,ffff80002a17e7b8,0,0,0) at sosend+0x76b sys/kern/uipc_socket.c:624
fifo_write(ffff80002a17e700) at fifo_write+0x80 sys/miscfs/fifofs/fifo_vnops.c:281
VOP_WRITE(fffffd80668d8798,ffff80002a17e7b8,3,fffffd807f7d7618) at VOP_WRITE+0xc3 sys/kern/vfs_vops.c:245
ktrwriteraw(ffff80002a1872c0,fffffd80668d8798,fffffd807f7d7618,ffff80002a17e888,ffff80002a17e860) at ktrwriteraw+0x16c sys/kern/kern_ktrace.c:682
ktrgenio(ffff80002a1872c0,7,0,ffff800000e1d940,ce8) at ktrgenio+0x272 ktrwrite2 sys/kern/kern_ktrace.c:644 [inline]
ktrgenio(ffff80002a1872c0,7,0,ffff800000e1d940,ce8) at ktrgenio+0x272 sys/kern/kern_ktrace.c:258
dofilereadv(ffff80002a1872c0,7,ffff80002a17e9f8,0,ffff80002a17eab0) at dofilereadv+0x2e7 sys/kern/sys_generic.c:263
sys_read(ffff80002a1872c0,ffff80002a17eb60,ffff80002a17eab0) at sys_read+0x87 sys/kern/sys_generic.c:167
syscall(ffff80002a17eb60) at syscall+0x5ae mi_syscall sys/sys/syscall_mi.h:183 [inline]
syscall(ffff80002a17eb60) at syscall+0x5ae sys/arch/amd64/amd64/trap.c:577
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x71c5c64d5a30, count: -12
ddb{0}> show registers
rdi                                0
rsi                          0x20000    acpi_pdirpa+0xbe71
rbp               0xffff80002a17e480
rbx                              0xe
rdx                                0
rcx               0xffff80002a1872c0
rax               0xffffffff82cbaff0    cpu_info_full_primary+0x1ff0
r8                              0x90
r9                                 0
r10               0x8760c8f29d8094d0
r11               0x2d4578ca6875555d
r12                                0
r13               0xffff800000e4b4b0
r14                  0x260980bb20000
r15               0xffff80002a1872c0
rip               0xffffffff82723b1c    witness_checkorder+0x1ec
cs                               0x8
rflags                       0x10246    __ALIGN_SIZE+0xf246
rsp               0xffff80002a17e3d0
ss                              0x10
witness_checkorder+0x1ec:       movl    0x8(%r14),%ebx
ddb{0}> show proc
PROC (sshd) tid=431853 pid=85137 tcnt=1 stat=onproc
    flags process=12<EXEC,SUGID> proc=1<INKTR>
    runpri=24, usrpri=50, slppri=24, nice=20
    wchan=0x0, wmesg=, ps_single=0x0
    forw=0xffffffffffffffff, list=0xffff80002a188aa8,0xffff80002a187578
    process=0xffff8000ffff4d60 user=0xffff80002a179000, vmspace=0xfffffd806d562390
    estcpu=0, cpticks=0, pctcpu=0.32, user=0, sys=0, intr=0
ddb{0}> ps
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
 83620  517126  15158      0  2        0x83                syz-executor.5
 53956  378229  15158      0  2        0x83                syz-executor.2
 14557   92017  15158      0  2        0x83                syz-executor.1
 57917  221284      0      0  3     0x14280  nfsidl        nfsio
 40230  507143      0      0  3     0x14280  nfsidl        nfsio
 75534   79440      0      0  3     0x14280  nfsidl        nfsio
 62954  373483      0      0  3     0x14280  nfsidl        nfsio
 95212  493997      0      0  3     0x14280  nfsidl        nfsio
 28543  223225  15158      0  2        0x83                syz-executor.6
 73987  381880  15158      0  2        0x83                syz-executor.4
 80627  171500      0      0  3     0x14200  bored         sosplice
 33076  289198  15158      0  3        0x82  nanoslp       syz-executor.7
   292  289035  15158      0  2        0x83                syz-executor.3
 58203  329089  15158      0  3        0x82  piperd        syz-executor.0
 15158  137049  42240      0  3   0x2000082  wait          syz-fuzzer
 15158  212161  42240      0  3   0x6000082  nanoslp       syz-fuzzer
 15158   43388  42240      0  3   0x6000082  wait          syz-fuzzer
 15158  382461  42240      0  3   0x6000082  wait          syz-fuzzer
 15158  350206  42240      0  3   0x6000082  wait          syz-fuzzer
 15158   10938  42240      0  3   0x6000082  wait          syz-fuzzer
 15158  225150  42240      0  2   0x6000083                syz-fuzzer
 15158  135304  42240      0  3   0x6000082  thrsleep      syz-fuzzer
 15158  134440  42240      0  3   0x6000082  thrsleep      syz-fuzzer
 15158  506605  42240      0  2   0x6000083                syz-fuzzer
 15158  450542  42240      0  3   0x6000082  thrsleep      syz-fuzzer
 15158   41215  42240      0  3   0x6000082  wait          syz-fuzzer
 15158  239154  42240      0  2   0x6000083                syz-fuzzer
 15158   42659  42240      0  2   0x6000083                syz-fuzzer
 15158  246754  42240      0  3   0x6000082  wait          syz-fuzzer
 15158  469603  42240      0  3   0x6000082  wait          syz-fuzzer
 42240  301295  85137      0  3    0x10008a  sigsusp       ksh
*85137  431853  72504      0  7        0x13                sshd
 47073  251773      1      0  3    0x100083  ttyin         getty
 72504  504869      1      0  3        0x88  kqread        sshd
  5275    5742  28187     74  3   0x1100092  bpf           pflogd
 28187  315890      1      0  3        0x80  netio         pflogd
 93389  523203  37683     73  2   0x1100091                syslogd
 37683   62832      1      0  3    0x100082  netio         syslogd
 58299  468728      1      0  3    0x100080  kqread        resolvd
 92216   53075  33970     77  3    0x100092  kqread        dhcpleased
 39651  327406  33970     77  3    0x100092  kqread        dhcpleased
 33970  230494      1      0  3        0x80  kqread        dhcpleased
 66474  276521      0      0  3     0x14200  bored         smr
 54388   11726      0      0  2     0x14200                zerothread
 82181  376236      0      0  3     0x14200  aiodoned      aiodoned
 33228   30734      0      0  3     0x14200  syncer        update
 31154  131294      0      0  3     0x14200  cleaner       cleaner
 55222   42910      0      0  7     0x14200                reaper
 45475  260327      0      0  3     0x14200  pgdaemon      pagedaemon
 25401  120574      0      0  3     0x14200  bored         viomb
 46419  294069      0      0  3  0x40014200  acpi0         acpi0
 80951  322845      0      0  3  0x40014200                idle1
 20473  241233      0      0  3     0x14200  bored         softnet3
 45630  401353      0      0  3     0x14200  bored         softnet2
 96554  228096      0      0  3     0x14200  bored         softnet1
 33884  409154      0      0  3     0x14200  bored         softnet0
 24905  435176      0      0  3     0x14200  bored         systqmp
 80842  200788      0      0  3     0x14200  bored         systq
 69920  387378      0      0  3     0x14200  tmoslp        softclockmp
 50403  442716      0      0  3  0x40014200  tmoslp        softclock
 38110  443286      0      0  3  0x40014200                idle0
     1  262586      0      0  3        0x82  wait          init
     0       0     -1      0  3     0x10200  scheduler     swapper
ddb{0}> show all locks
Process 85137 (sshd) thread 0xffff80002a1872c0 (431853)
exclusive kernel_lock &kernel_lock r = 0 (0xffffffff82ec16a8)
#0  witness_lock+0x447
#1  __mp_acquire_count+0x48 sys/kern/kern_lock.c:227
#2  mi_switch+0x46f sys/kern/sched_bsd.c:470
#3  sleep_finish+0x19b sys/kern/kern_synch.c:414
#4  rwsleep+0xab sys/kern/kern_synch.c:300
#5  sosend+0x76b sys/kern/uipc_socket.c:624
#6  fifo_write+0x80 sys/miscfs/fifofs/fifo_vnops.c:281
#7  VOP_WRITE+0xc3 sys/kern/vfs_vops.c:245
#8  ktrwriteraw+0x16c sys/kern/kern_ktrace.c:682
#9  ktrgenio+0x272 ktrwrite2 sys/kern/kern_ktrace.c:644 [inline]
#9  ktrgenio+0x272 sys/kern/kern_ktrace.c:258
#10 dofilereadv+0x2e7 sys/kern/sys_generic.c:263
#11 sys_read+0x87 sys/kern/sys_generic.c:167
#12 syscall+0x5ae mi_syscall sys/sys/syscall_mi.h:183 [inline]
#12 syscall+0x5ae sys/arch/amd64/amd64/trap.c:577
#13 Xsyscall+0x128
ddb{0}> show malloc
           Type InUse  MemUse  HighUse   Limit  Requests Type Lim
         devbuf 10192   6474K    6943K 166960K     19865        0
            pcb    15     15K      17K 166960K       256        0
         rtable   178     13K      15K 166960K       777        0
             pf    33      9K      10K 166960K       145        0
         ifaddr    36     13K      16K 166960K       118        0
        ifgroup    58      2K       2K 166960K       213        0
         sysctl     2      0K       0K 166960K         2        0
       counters    64     36K      36K 166960K       150        0
       ioctlops     0      0K       4K 166960K      1594        0
            iov     0      0K      48K 166960K       438        0
          mount     1      1K       1K 166960K         1        0
            log     0      0K       0K 166960K         4        0
         vnodes  1348     84K      85K 166960K      3482        0
      UFS quota     1     32K      32K 166960K         1        0
      UFS mount     5     36K      36K 166960K         5        0
            shm     2      1K       5K 166960K        45        0
         VM map     2      1K       1K 166960K         2        0
            sem    12      0K       1K 166960K       379        0
        dirhash    12      2K       2K 166960K        24        0
           ACPI  1697    195K     286K 166960K     12548        0
      file desc    10     33K      89K 166960K      4049        0
          sigio     0      0K       0K 166960K       156        0
           proc    70     91K     128K 166960K       972        0
        subproc   104      6K       6K 166960K       214        0
    NFS srvsock     1      0K       0K 166960K         1        0
     NFS daemon     1     16K      16K 166960K         1        0
    ip_moptions     0      0K       0K 166960K       332        0
       in_multi    66      4K       7K 166960K       218        0
    ether_multi     1      0K       0K 166960K         4        0
    ISOFS mount     1     32K      32K 166960K         1        0
  MSDOSFS mount     1     16K      16K 166960K         1        0
           ttys    73    334K     334K 166960K        73        0
           exec     0      0K       1K 166960K       979        0
            tdb     3      0K       0K 166960K         3        0
        VM swap     8     62K      64K 166960K        10        0
       UVM amap   353    315K     321K 166960K     42151        0
       UVM aobj   131      4K       4K 166960K       139        0
        memdesc     1      4K       4K 166960K         1        0
    crypto data     1      1K       1K 166960K         1        0
    ip6_options     0      0K       0K 166960K       152        0
            NDP    12      0K       2K 166960K        87        0
           temp    99   6781K    6900K 166960K     36610        0
         kqueue    12     18K      28K 166960K       315        0
      SYN cache     2     16K      16K 166960K         2        0
ddb{0}> show all pools
Name      Size Requests Fail Releases Pgreq Pgrel Npage Hiwat Minpg Maxpg Idle
plcache    128       24    0        0     1     0     1     1     0     8    0
rtpcb      120      164    0      161     1     0     1     1     0     8    0
rtentry    112      231    0      152     4     0     4     4     0     8    0
unpcb      144     2792    0     2777    36    34     2    10     0     8    1
syncache   336       28    0       28     6     6     0     1     0     8    0
tcpqe       32      527    0      527     7     7     0     1     0     8    0
tcpcb      808      864    0      853    24    20     4    13     0     8    0
arp        120       44    0       30     1     0     1     1     0     8    0
inpcb      392     2550    0     2535    51    47     4    13     0     8    0
nd6        136       48    0       33     1     0     1     1     0     8    0
pkpcb       40        3    0        3     1     1     0     1     0     8    0
kcovpl      48       16    0        8     1     0     1     1     0     8    0
ppxss      1168      16    0       16     3     3     0     1     0     8    0
pffrag     232       10    0        9     1     0     1     1     0   482    0
pffrnode    88       10    0        9     1     0     1     1     0     8    0
pffrent     40      133    0      132     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      127    0      110     1     0     1     1     0     8    0
pfstkey    128      127    0      110     2     0     2     2     0     8    0
pfstate    376      127    0      110     5     3     2     4     0     8    0
pfrule     1344      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      862    0      515    32     6    26    30     0     8    0
art_table   32      863    0      515     4     0     4     4     0     8    0
art_node    16      220    0      148     1     0     1     1     0     8    0
semupl     112        2    0        2     1     1     0     1     0     8    0
semapl     112      377    0      367     1     0     1     1     0     8    0
shmpl      112      136    0        8     4     0     4     4     0     8    0
dirhash    1024      25    0        8     3     0     3     3     0     8    0
dino2pl    256     6655    0     5192    92     0    92    92     0     8    0
ffsino     272     6655    0     5192    98     0    98    98     0     8    0
nchpl      144    12259    0    10617    63     0    63    63     0     8    0
uvmvnodes   80     5926    0        0   121     0   121   121     0     8    0
vnodes     216     5926    0        0   330     0   330   330     0     8    0
namei      1024   41228    0    41228     7     6     1     2     0     8    1
percpumem   16       89    0       43     1     0     1     1     0     8    0
vcpupl     2048      19    0        0     3     0     3     3     0     8    0
vmpool     696       22    0        3     2     0     2     2     0     8    0
kstatmem   264      110    0       86     2     0     2     2     0     8    0
scxspl     216    36411    0    36411    21    19     2     8     1     8    2
plimitpl   152      363    0      347     1     0     1     1     0     8    0
sigapl     424     4380    0     4332     9     2     7     8     0     8    0
futexpl     64    30016    0    30016     1     0     1     1     0     8    1
knotepl    120      610    0        0    19     0    19    19     0     8    0
kqueuepl   216      685    0      677    11    10     1     5     0     8    0
pipepl     320      611    0      583    16    13     3     8     0     8    0
fdescpl    496     4341    0     4318     6     2     4     5     0     8    0
filepl     152    22018    0    21779    54    42    12    20     0     8    2
lockfpl    104      813    0      811     2     1     1     2     0     8    0
lockfspl    48      296    0      294     1     0     1     1     0     8    0
sessionpl  144       32    0       15     1     0     1     1     0     8    0
pgrppl      48       77    0       60     1     0     1     1     0     8    0
ucredpl    104     3421    0     3408     1     0     1     1     0     8    0
zombiepl   144     4333    0     4332     2     1     1     1     0     8    0
processpl  1136    4380    0     4332     7     1     6     6     0     8    0
procpl     680    11443    0    11380    11     3     8     9     0     8    0
srpgc       96       14    0       14     6     6     0     1     0     8    0
sosppl     168       37    0       37     8     8     0     1     0     8    0
sockpl     584     5509    0     5477    67    62     5    21     0     8    0
mcl64k     65536     15    0        0     2     0     2     2     0     8    0
mcl16k     16384     18    0        0     3     0     3     3     0     8    1
mcl12k     12288     17    0        0     2     0     2     2     0     8    0
mcl9k      9216       6    0        0     1     0     1     1     0     8    0
mcl8k      8192      19    0        0     3     0     3     3     0     8    0
mcl4k      4096      17    0        0     3     0     3     3     0     8    0
mcl2k2     2112       6    0        0     1     0     1     1     0     8    0
mcl2k      2048     348    0        0    44     0    44    44     0     8    0
mtagpl      96      196    0        0     4     0     4     4     0     8    0
mbufpl     256     1087    0        0    61     0    61    61     0     8    0
bufpl      280    10437    0     4116   452     0   452   452     0     8    0
anonpl      24   513966    0   500148   111    18    93    94     0   186    0
amapchunkpl 152  133063    0   132315    50    11    39    43     0   158    0
amappl16   200    10906    0    10450    35    10    25    26     0     8    0
amappl15   192       27    0       27     1     1     0     1     0     8    0
amappl14   184      199    0      185     2     1     1     2     0     8    0
amappl13   176        8    0        8     2     2     0     1     0     8    0
amappl12   168     5142    0     5117     3     1     2     3     0     8    0
amappl11   160       60    0       46     1     0     1     1     0     8    0
amappl10   152       40    0       28     1     0     1     1     0     8    0
amappl9    144      224    0      223     1     0     1     1     0     8    0
amappl8    136      355    0      280     3     0     3     3     0     8    0
amappl7    128      212    0      186     2     0     2     2     0     8    0
amappl6    120      423    0      413     1     0     1     1     0     8    0
amappl5    112      193    0      182     1     0     1     1     0     8    0
amappl4    104      599    0      565     3     2     1     2     0     8    0
amappl3     96    26255    0    26193     3     0     3     3     0     8    0
amappl2     88     4932    0     4860     3     1     2     3     0     8    0
amappl1     80    24269    0    23733    24    11    13    23     0     8    0
amappl      88    41418    0    41209     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      138    0        8     3     0     3     3     0     8    0
uaddrrnd    24     4364    0     4322     1     0     1     1     0     8    0
uaddrbest   32        2    0        0     1     0     1     1     0     8    0
uaddr       24     4364    0     4322     1     0     1     1     0     8    0
vmmpekpl   168    34932    0    34854     4     0     4     4     0     8    0
vmmpepl    168   275163    0   273022   190    77   113   138     0   357    0
vmsppl     448     4363    0     4321     8     2     6     6     0     8    0
rwobjpl     56    76872    0    69281   112     3   109   110     0     8    0
pdppl      4096    8735    0     8661   298   216    82    89     0     8    8
pvpl        32    45648    0        0   369     0   369   369     0   265    0
pmappl     248     4363    0     4321     5     1     4     4     0     8    0
extentpl    40       56    0       38     1     0     1     1     0     8    0
phpool     112      772    0      326    14     0    14    14     0     8    0
ddb{0}> machine ddbcpu 0
Invalid cpu 0
ddb{0}> trace
witness_checkorder(ffff800000e4b4b0,9,0) at witness_checkorder+0x1ec sys/kern/subr_witness.c:794
rw_enter(ffff800000e4b4a0,1) at rw_enter+0xd5 sys/kern/kern_rwlock.c:249
rwsleep(ffff800000e4b640,ffff800000e4b4a0,118,ffffffff8292b56b,0) at rwsleep+0xd6 sys/kern/kern_synch.c:303
sosend(ffff800000e4b498,0,ffff80002a17e7b8,0,0,0) at sosend+0x76b sys/kern/uipc_socket.c:624
fifo_write(ffff80002a17e700) at fifo_write+0x80 sys/miscfs/fifofs/fifo_vnops.c:281
VOP_WRITE(fffffd80668d8798,ffff80002a17e7b8,3,fffffd807f7d7618) at VOP_WRITE+0xc3 sys/kern/vfs_vops.c:245
ktrwriteraw(ffff80002a1872c0,fffffd80668d8798,fffffd807f7d7618,ffff80002a17e888,ffff80002a17e860) at ktrwriteraw+0x16c sys/kern/kern_ktrace.c:682
ktrgenio(ffff80002a1872c0,7,0,ffff800000e1d940,ce8) at ktrgenio+0x272 ktrwrite2 sys/kern/kern_ktrace.c:644 [inline]
ktrgenio(ffff80002a1872c0,7,0,ffff800000e1d940,ce8) at ktrgenio+0x272 sys/kern/kern_ktrace.c:258
dofilereadv(ffff80002a1872c0,7,ffff80002a17e9f8,0,ffff80002a17eab0) at dofilereadv+0x2e7 sys/kern/sys_generic.c:263
sys_read(ffff80002a1872c0,ffff80002a17eb60,ffff80002a17eab0) at sys_read+0x87 sys/kern/sys_generic.c:167
syscall(ffff80002a17eb60) at syscall+0x5ae mi_syscall sys/sys/syscall_mi.h:183 [inline]
syscall(ffff80002a17eb60) at syscall+0x5ae sys/arch/amd64/amd64/trap.c:577
Xsyscall() at Xsyscall+0x128
end of kernel
end trace frame: 0x71c5c64d5a30, count: -12
ddb{0}> machine ddbcpu 1
Stopped at      x86_ipi_db+0x1e:        addq    $0x8,%rsp
ddb{1}> trace
x86_ipi_db(ffff800029cebff0) at x86_ipi_db+0x1e 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+0x27
__sanitizer_cov_trace_pc() at __sanitizer_cov_trace_pc
uvm_unmap_detach(ffff80002a1528e0,1) at uvm_unmap_detach+0x113 sys/uvm/uvm_map.c:1382
uvm_map_teardown(fffffd807f0031c0) at uvm_map_teardown+0x2f5 sys/uvm/uvm_map.c:2585
uvmspace_free(fffffd807f0031c0) at uvmspace_free+0xa6 sys/uvm/uvm_map.c:3497
reaper(ffff80002a145ff8) at reaper+0x19a sys/kern/kern_exit.c:463
end trace frame: 0x0, count: -8

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/03/04 14:38 openbsd e36fb1b3c0bc 0f110c12 .config console log report [disk image] [bsd.gdb] [kernel image] ci-openbsd-multicore protection_fault: witness_checkorder
* Struck through repros no longer work on HEAD.