syzbot


uvm_fault: km_free (3)

Status: upstream: reported on 2025/12/24 17:45
Reported-by: syzbot+bfefe75352578cb7301a@syzkaller.appspotmail.com
First crash: 65d, last: 65d
Similar bugs (2)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
openbsd uvm_fault: km_free -1 6 1326d 1514d 0/3 auto-obsoleted due to no activity on 2022/10/10 22:33
openbsd uvm_fault: km_free (2) -1 10 566d 813d 0/3 auto-obsoleted due to no activity on 2024/11/09 02:06

Sample crash report:
uvm_fault(0xffffffff839809c0, 0x0, 0, 2) -> e
kernel: page fault trap, code=2
Stopped at      km_free+0x191:  movq    $0,0(%rax)
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
*126777  43464      0     0x14000      0x200    0  systqmp
km_free(0,1000,ffffffff8351ec08,ffffffff8351ec20) at km_free+0x191 sys/uvm/uvm_km.c:672
pool_p_free(ffffffff83a0de20,fffffd8079199f90) at pool_p_free+0x1d0 sys/kern/subr_pool.c:1014
pool_gc_pages(0) at pool_gc_pages+0x357 sys/kern/subr_pool.c:1587
taskq_thread(ffffffff83822e10) at taskq_thread+0x157 sys/kern/kern_task.c:446
end trace frame: 0x0, count: 11
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: uvm_fault(0xffffffff839809c0, 0x0, 0, 2) -> e
ddb{0}> trace
km_free(0,1000,ffffffff8351ec08,ffffffff8351ec20) at km_free+0x191 sys/uvm/uvm_km.c:672
pool_p_free(ffffffff83a0de20,fffffd8079199f90) at pool_p_free+0x1d0 sys/kern/subr_pool.c:1014
pool_gc_pages(0) at pool_gc_pages+0x357 sys/kern/subr_pool.c:1587
taskq_thread(ffffffff83822e10) at taskq_thread+0x157 sys/kern/kern_task.c:446
end trace frame: 0x0, count: -4
ddb{0}> show registers
rdi                           0x1000    __ALIGN_SIZE
rsi                       0x28000000
rbp               0xffff80002a20a6e0
rbx               0xffffffff8351ec08    kv_page
rdx                                0
rcx               0xffff8000ffffe000
rax                                0
r8                0xffffffffffffffff
r9                                 0
r10               0xed06b602bbc5f718
r11               0xd07acfcc6183665a
r12                           0x1000    __ALIGN_SIZE
r13                                0
r14                           0x1000    __ALIGN_SIZE
r15                    0x28000000000
rip               0xffffffff8159ac21    km_free+0x191
cs                               0x8
rflags                       0x10246    __ALIGN_SIZE+0xf246
rsp               0xffff80002a20a670
ss                              0x10
km_free+0x191:  movq    $0,0(%rax)
ddb{0}> show proc
PROC (systqmp) tid=126777 pid=43464 tcnt=1 stat=onproc
    flags process=14000<NOZOMBIE,SYSTEM> proc=200<SYSTEM>
    runpri=32, usrpri=51, slppri=32, nice=20
    wchan=0x0, wmesg=, ps_single=0x0 scnt=0 ecnt=0
    forw=0xffffffffffffffff, list=0xffff8000ffffe298,0xffff8000ffffe540
    process=0xffff8000ffff8e70 user=0xffff80002a205000, vmspace=0xffffffff839809c0
    estcpu=1, cpticks=2, pctcpu=0.0, user=0, sys=0, intr=0
ddb{0}> ps
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
 79616  186634  14234  60929  3        0x90  nanoslp       syz-executor
 79616  309851  14234  60929  3   0x4000090  kqsel         syz-executor
 79616  429950  14234  60929  3   0x4000090  kqsel         syz-executor
 79616  332401  14234  60929  3   0x4000090  fsleep        syz-executor
 14234  211803  86853      0  2         0x2                syz-executor
 29878  380137  86853      0  3        0x82  piperd        syz-executor
 46119  196984      1      0  3    0x100083  ttyopn        getty
 15881  158229  86853      0  3        0x82  piperd        syz-executor
 30421   45122  86853      0  3        0x82  piperd        syz-executor
  7396  377777  86853      0  3        0x82  piperd        syz-executor
 18399  495959  86853      0  3        0x82  nanoslp       syz-executor
 45541  244473  86853      0  3        0x82  piperd        syz-executor
 86853  240987  51327      0  3        0x82  nanoslp       syz-executor
 51327  330809  47790      0  3    0x10008a  sigsusp       ksh
 47790  226411  50321      0  3        0x98  kqread        sshd-session
 50321  112822  69444      0  3        0x92  kqread        sshd-session
 69444  200080      1      0  3        0x88  kqread        sshd
 75158  275260  24949     74  3   0x1100092  bpf           pflogd
 24949  415801      1      0  3        0x80  sbwait        pflogd
 11884  471082  97753     73  3   0x1100090  kqread        syslogd
 97753  246499      1      0  3    0x100082  sbwait        syslogd
 49272  313466      1      0  3    0x100080  kqread        resolvd
 21844  406100  24376     77  3    0x100092  kqread        dhcpleased
 17783  131687  24376     77  3    0x100092  kqread        dhcpleased
 24376   27828      1      0  3        0x80  kqread        dhcpleased
  8241  391178      0      0  3     0x14200  bored         smr
  5102  200716      0      0  3     0x14200  pgzero        zerothread
 40947   12750      0      0  3     0x14200  aiodoned      aiodoned
 32568  349607      0      0  3     0x14200  syncer        update
 83336  222010      0      0  3     0x14200  cleaner       cleaner
 40929  516323      0      0  3     0x14200  reaper        reaper
 41273  238396      0      0  3     0x14200  pgdaemon      pagedaemon
 97881  483722      0      0  3     0x14200  bored         viomb
 68374  376666      0      0  3  0x40014200  acpi0         acpi0
 26762   21329      0      0  7  0x40014200                idle1
 39256  165824      0      0  3     0x14200  bored         softnet1
 93262  344362      0      0  3     0x14200  bored         softnet0
*43464  126777      0      0  7     0x14200                systqmp
 33493  400766      0      0  3     0x14200  bored         systq
 43560  282190      0      0  3     0x14200  tmoslp        softclockmp
 88069    3984      0      0  3  0x40014200  tmoslp        softclock
 59031    8299      0      0  3  0x40014200                idle0
     1   26529      0      0  3     0x80082  wait          init
     0       0     -1      0  3  0x10010200  scheduler     swapper
ddb{0}> show all locks
Process 43464 (systqmp) thread 0xffff8000ffffe000 (126777)
shared rwlock pools r = 0 (0xffffffff837ec348)
#0  witness_lock+0x5f1 stacktrace_save sys/sys/stacktrace.h:37 [inline]
#0  witness_lock+0x5f1 sys/kern/subr_witness.c:1160
#1  rw_do_enter_read+0x3e8 sys/kern/kern_rwlock.c:413
#2  pool_gc_pages+0x2e sys/kern/subr_pool.c:1564
#3  taskq_thread+0x157 sys/kern/kern_task.c:446
#4  proc_trampoline+0x10
shared rwlock systqmp r = 0 (0xffffffff83822e88)
#0  witness_lock+0x5f1 stacktrace_save sys/sys/stacktrace.h:37 [inline]
#0  witness_lock+0x5f1 sys/kern/subr_witness.c:1160
#1  taskq_thread+0x12a sys/kern/kern_task.c:442
#2  proc_trampoline+0x10
ddb{0}> show malloc
           Type InUse  MemUse  HighUse   Limit  Requests Type Lim
         devbuf 11096  12101K   14165K 166960K     14721        0
            pcb    17     19K      24K 166960K       282        0
         rtable   176     10K      10K 166960K       685        0
             pf    37     18K      82K 166960K       180        0
         ifaddr    33      5K       7K 166960K       126        0
        ifgroup    55      2K       2K 166960K       191        0
         sysctl     4      1K       9K 166960K        12        0
       counters    70     37K      38K 166960K       336        0
       ioctlops     0      0K       4K 166960K      1936        0
            iov     0      0K      24K 166960K        71        0
          mount     1      1K       1K 166960K         1        0
            log     0      0K       0K 166960K         4        0
         vnodes  1514     95K      96K 166960K      2716        0
      UFS quota     1     32K      32K 166960K         1        0
      UFS mount     5     36K      36K 166960K         5        0
            shm     2      1K       5K 166960K        11        0
         VM map     2      1K       1K 166960K         2        0
            sem    12      0K       0K 166960K       165        0
        dirhash    12      2K       2K 166960K        24        0
           ACPI  1692    195K     286K 166960K     12470        0
      file desc    11     37K     106K 166960K      1129        0
          sigio     0      0K       0K 166960K        60        0
           proc    72    115K     163K 166960K       795        0
        subproc    63      3K       4K 166960K       126        0
    NFS srvsock     1      0K       0K 166960K         1        0
     NFS daemon     1     16K      16K 166960K         1        0
    ip_moptions     0      0K       0K 166960K       327        0
       in_multi    61      4K       7K 166960K       225        0
    ether_multi     1      0K       0K 166960K         9        0
            mrt     1      0K       0K 166960K         8        0
    ISOFS mount     1     32K      32K 166960K         1        0
  MSDOSFS mount     1     16K      16K 166960K         1        0
           ttys   229   1023K    1023K 166960K       229        0
           exec     0      0K       1K 166960K       600        0
   fusefs mount     1     32K      32K 166960K         1        0
            tdb     3      0K       0K 166960K         3        0
        VM swap     8     62K      64K 166960K        10        0
       UVM amap   195    149K     173K 166960K     11681        0
       UVM aobj    88      9K       9K 166960K        93        0
     pinsyscall    36     72K     104K 166960K      2406        0
        memdesc     1      4K       4K 166960K         1        0
    crypto data     1      1K       1K 166960K         1        0
    ip6_options     0      0K       1K 166960K        83        0
            NDP    12      0K       2K 166960K        90        0
           temp    67   8676K    8798K 166960K     41882        0
         kqueue    15     22K      32K 166960K       215        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       26    0        0     1     0     1     1     0     8    0
rtpcb      120      215    0      212     3     2     1     3     0     8    0
rtentry    176      201    0      140     6     1     5     6     0     8    0
unpcb      144      633    0      615     6     4     2     4     0     8    1
syncache   336        4    0        4     2     2     0     1     0     8    0
tcpqe       32        1    0        1     1     1     0     1     0     8    0
tcpcb      736      269    0      265     4     3     1     4     0     8    0
arp        136       32    0       21     1     0     1     1     0     8    0
inpcb      328     1320    0     1313    22    14     8    13     0     8    7
nd6        152       43    0       31     1     0     1     1     0     8    0
pkpcb       40        4    0        4     3     2     1     1     0     8    1
kcovpl      48       14    0        7     1     0     1     1     0     8    0
mppekey    1024       1    0        1     1     1     0     1     0     8    0
ppxss      1192     117    0      117     1     0     1     1     0     8    1
pppxif     1504       4    0        4     2     2     0     1     0     8    0
pfstscr     40        1    0        1     1     1     0     1     0     8    0
pffrag     232       15    0        0     1     0     1     1     0   482    0
pffrnode    88       14    0        0     1     0     1     1     0     8    0
pffrent     40       18    0        3     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
pfrktable  1344       1    0        1     1     1     0     1     0     8    0
pfstitem    24       66    0       22     1     0     1     1     0     8    0
pfstkey    128       70    0       26     2     0     2     2     0     8    0
pfstate    448       68    0       24     5     0     5     5     0     8    0
pfrule     1344      31    0       25     2     1     1     2     0     8    0
rttmr      136        2    0        2     1     1     0     1     0     8    0
art_heap8  4096       4    0        0     4     0     4     4     0     8    0
art_heap4  256      895    0      619    32    11    21    29     0     8    1
art_table   40      899    0      619     5     0     5     5     0     8    0
art_node    32      198    0      143     1     0     1     1     0     8    0
sysvmsgpl   40        7    0        5     1     0     1     1     0     8    0
semapl     112      162    0      152     1     0     1     1     0     8    0
shmpl      112       88    0        4     3     0     3     3     0     8    0
dirhash    1024      26    0        9     3     0     3     3     0     8    0
dino2pl    256     3525    0     2014    96     0    96    96     0     8    0
ffsino     296     3525    0     2014   118     1   117   118     0     8    0
nchpl      144     5071    0     3353    65     0    65    65     0     8    0
rtmask      32       12    0       12     1     1     0     1     0     8    0
vnodes     216     4393    0        0   245     0   245   245     0     8    0
namei      1024   18755    0    18755     2     1     1     2     0     8    1
percpumem   16      183    0      133     1     0     1     1     0     8    0
vcpupl     3968       2    0        1     1     0     1     1     0     8    0
vmpool     848        2    0        1     1     0     1     1     0     8    0
kstatmem   264      124    0       94     3     0     3     3     0     8    0
scsiplug    72        4    0        4     1     1     0     1     0     8    0
scxspl     216    20253    0    20253    11     9     2     8     1     8    2
plimitpl   152      166    0      150     1     0     1     1     0     8    0
sigapl     424     1421    0     1380     7     1     6     7     0     8    0
knotepl    120      555    0        0    17     0    17    17     0     8    0
kqueuepl   224      425    0      412     6     5     1     5     0     8    0
pipepl     344      243    0      216     6     3     3     6     0     8    0
fdescpl    528     1398    0     1373     3     0     3     3     0     8    0
filepl     160     9889    0     9689    30    13    17    22     0     8    7
lockfpl    104      326    0      324     1     0     1     1     0     8    0
lockfspl    48      127    0      125     1     0     1     1     0     8    0
sessionpl  144       30    0       21     1     0     1     1     0     8    0
pgrppl      48       54    0       38     1     0     1     1     0     8    0
ucredpl    104     1824    0     1810     1     0     1     1     0     8    0
zombiepl   144     1381    0     1380     1     0     1     1     0     8    0
processpl  1232    1421    0     1380     6     2     4     5     0     8    0
procpl     664     2864    0     2820     6     0     6     6     0     8    0
sosppl     176        2    0        2     2     2     0     1     0     8    0
sockpl     752     2269    0     2241    37    27    10    25     0     8    6
mcl64k     65536      3    0        0     1     0     1     1     0     8    0
mcl16k     16384      3    0        0     1     0     1     1     0     8    0
mcl9k      9216       1    0        0     1     0     1     1     0     8    0
mcl8k      8192       2    0        0     1     0     1     1     0     8    0
mcl4k      4096     132    0        0    16     0    16    16     0     8    0
mcl2k      2048      51    0        0     6     0     6     6     0     8    0
mtagpl      96       97    0        0     3     0     3     3     0     8    0
mbufpl     256     1296    0        0    81     0    81    81     0     8    0
bufpl      280    10017    0     3881   439     0   439   439     0     8    0
anonpl      32    11066    0        0    90     0    90    90     0   246    0
amapchunkpl 152   38022    0    37686    34     8    26    30     0   158    6
amappl16   200     4340    0     4317    38    27    11    22     0     8    8
amappl15   192        4    0        4     2     2     0     1     0     8    0
amappl14   184        4    0        4     1     1     0     1     0     8    0
amappl13   176      516    0      515     1     0     1     1     0     8    0
amappl12   168     1791    0     1755     3     0     3     3     0     8    0
amappl11   160        4    0        4     1     1     0     1     0     8    0
amappl10   152       48    0       34     1     0     1     1     0     8    0
amappl9    144      290    0      289     2     1     1     1     0     8    0
amappl8    136       30    0       28     1     0     1     1     0     8    0
amappl7    128      102    0      101     1     0     1     1     0     8    0
amappl6    120      359    0      344     1     0     1     1     0     8    0
amappl5    112       79    0       68     1     0     1     1     0     8    0
amappl4    104      450    0      420     1     0     1     1     0     8    0
amappl3     96     7538    0     7465     5     1     4     4     0     8    0
amappl2     88      575    0      515     2     0     2     2     0     8    0
amappl1     80    13539    0    12969    14     1    13    14     0     8    0
amappl      88    10717    0    10598     5     0     5     5     0    92    0
uvmvnodes   80      137    0        0     3     0     3     3     0     8    0
dma4096    4096       1    0        1     1     1     0     1     0     8    0
dma1024    1024       2    0        1     1     0     1     1     0     8    0
dma256     256        6    0        6     1     1     0     1     0     8    0
dma128     128      254    0      254     2     2     0     1     0     8    0
dma64       64        7    0        7     2     2     0     1     0     8    0
dma32       32        7    0        7     1     1     0     1     0     8    0
dma16       16       19    0       18     1     0     1     1     0     8    0
aobjpl      72       92    0        5     2     0     2     2     0     8    0
uaddrrnd    24     1398    0     1373     1     0     1     1     0     8    0
uaddrbest   32        2    0        0     1     0     1     1     0     8    0
uaddr       24     1398    0     1373     1     0     1     1     0     8    0
vmmpekpl   168    12267    0    12215     3     0     3     3     0     8    0
vmmpepl    168    93372    0    91763   109    12    97   105     0   357   11
vmsppl     488     1397    0     1373     6     1     5     5     0     8    0
rwobjpl     80    26307    0    25228    32     4    28    31     0     8    0
pdppl      4096    2808    0     2749   123    48    75    86     0     8   16
pvpl        32    20349    0        0   164     0   164   164     0   265    0
pmappl     256     1399    0     1374     3     0     3     3     0     8    0
extentpl    40       45    0       27     1     0     1     1     0     8    0
phpool     112      384    0       68    10     0    10    10     0     8    0
ddb{0}> machine ddbcpu 0
Invalid cpu 0
ddb{0}> trace
km_free(0,1000,ffffffff8351ec08,ffffffff8351ec20) at km_free+0x191 sys/uvm/uvm_km.c:672
pool_p_free(ffffffff83a0de20,fffffd8079199f90) at pool_p_free+0x1d0 sys/kern/subr_pool.c:1014
pool_gc_pages(0) at pool_gc_pages+0x357 sys/kern/subr_pool.c:1587
taskq_thread(ffffffff83822e10) at taskq_thread+0x157 sys/kern/kern_task.c:446
end trace frame: 0x0, count: -4
ddb{0}> machine ddbcpu 1
Stopped at      x86_ipi_db+0x27:        addq    $0x8,%rsp
x86_ipi_db(ffff8000299ddff0) at x86_ipi_db+0x27 sys/arch/amd64/amd64/db_interface.c:394
x86_ipi_handler() at x86_ipi_handler+0xd9 sys/arch/amd64/amd64/ipi.c:106
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x27
acpicpu_idle() at acpicpu_idle+0x457 sys/dev/acpi/acpicpu_x86.c:1224
sched_idle(ffff8000299ddff0) at sched_idle+0x391 sys/kern/kern_sched.c:191
end trace frame: 0x0, count: 10
ddb{1}> trace
x86_ipi_db(ffff8000299ddff0) at x86_ipi_db+0x27 sys/arch/amd64/amd64/db_interface.c:394
x86_ipi_handler() at x86_ipi_handler+0xd9 sys/arch/amd64/amd64/ipi.c:106
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x27
acpicpu_idle() at acpicpu_idle+0x457 sys/dev/acpi/acpicpu_x86.c:1224
sched_idle(ffff8000299ddff0) at sched_idle+0x391 sys/kern/kern_sched.c:191
end trace frame: 0x0, count: -5

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/12/24 17:44 openbsd 1dc30a6de584 5dc09de1 .config console log report [disk image] [bsd.gdb] [kernel image] ci-openbsd-multicore uvm_fault: km_free
* Struck through repros no longer work on HEAD.