[Bug 280846] Low memory freezes / OOM: a thread waited too long to allocate a page

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 24 Oct 2024 05:01:23 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280846

--- Comment #60 from Mark Millard <marklmi26-fbsd@yahoo.com> ---
(In reply to Mark Millard from comment #59)

# sysctl vm.domain | grep stat | sort
vm.domain.0.stats.active: 401978
vm.domain.0.stats.actpdpgs: 62005476
vm.domain.0.stats.free_count: 43575
vm.domain.0.stats.free_min: 12880
vm.domain.0.stats.free_reserved: 2713
vm.domain.0.stats.free_severe: 7796
vm.domain.0.stats.free_target: 43381
vm.domain.0.stats.inactive: 1022754
vm.domain.0.stats.inactive_pps: 136138740
vm.domain.0.stats.inactive_target: 65071
vm.domain.0.stats.inactpdpgs: 9985067
vm.domain.0.stats.laundpdpgs: 32733
vm.domain.0.stats.laundry: 240061
vm.domain.0.stats.unswappable: 6536
vm.domain.0.stats.unswppdpgs: 0

So vm.domain.0.stats.free_count and vm.domain.0.stats.free_target
are now approximately equal. It seems to increase
vm.domain.0.stats.unswappable more now.

Also note vm.domain.0.stats.inactive is about 975 KiPages.
Presuming that clean pages are being reclaimed, much of this
(and all of vm.domain.0.stats.laundry and
vm.domain.0.stats.unswappable) are dirty pages.

Whatever Home Depot's home pages does, it seems to
cause FireFox to dirty pages but not free them.
Sorted by decreasing RES (starting with 2093Mi),
the largest firefox processes are are:

 1525     0 root         28  20    0   4620Mi    2093Mi select   2  10:00  
0.26% /usr/local/lib/firefox/firefox -contentproc
{744240e1-aa23-48b1-bded-f62a1fa4696a} 1512 7 tab
 1512     0 root         78  20    0   4385Mi    1373Mi select   3  71:51  
1.30% firefox
 1526     0 root         28  28    0   3175Mi  627328Ki CPU1     1 218:28  
7.10% /usr/local/lib/firefox/firefox -contentproc
{b91e352c-11e4-473a-bb58-eb4826e54ecf} 1512 8 tab
 1524     0 root         29  20    0   3039Mi  504836Ki select   0  18:09  
0.28% /usr/local/lib/firefox/firefox -contentproc
{075167db-4164-41b8-b7df-4f99b4610ef9} 1512 6 tab
 1520     0 root         21  20    0   2688Mi  337388Ki select   1   0:32  
0.00% /usr/local/lib/firefox/firefox -contentproc
{d3bc151f-c6c2-4e85-8d13-1f3eda86142f} 1512 2 tab

They also tend to be the bigger CPU users.

For reference:

1579Mi Active, 3983Mi Inact, ??? Laundry, 1241Mi Wired, . . ., 174768Ki Free,
3761Mi MaxObsActive, 1281Mi MaxObsWired, ??? MaxObs(Act+Wir+Lndry)

As far as Inact + (swappable laundry+unswappable laundry)
MiByte estimates go:

3983 + (240061+6536)*4096/1024/1024 is somewhat over 4946.2
at this point

(Based on expecting Inact to be almost all dirty pages in
this context.)

-- 
You are receiving this mail because:
You are the assignee for the bug.