NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-powerpc/56818: oea: system trapped in pgdaemon under high memory pressure



The following reply was made to PR port-powerpc/56818; it has been noted by GNATS.

From: Rin Okuyama <rokuyama.rk%gmail.com@localhost>
To: gnats-bugs%netbsd.org@localhost, port-powerpc-maintainer%netbsd.org@localhost,
 gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Cc: 
Subject: Re: port-powerpc/56818: oea: system trapped in pgdaemon under high
 memory pressure
Date: Sun, 8 May 2022 20:49:14 +0900

 On 2022/05/08 4:40, matthew green wrote:
 >   i see that file pages are ~60% of the system memory.
 >   
 >   what are the vm.{file,anon,exec}{min,max} values?  the default for
 >   file{min,max} are {10,50}, so it should be ejecting at least 10%
 >   of memory really easily to get under filemax.  if those pages are
 >   dirty why aren't they being paged out... (system boot, and pools
 >   are also using about 15% of memory currently..)
 
 They are kept default:
 
 ----
 # sysctl vm
 vm.loadavg: 0.01 0.09 0.06
 vm.maxslp = 20
 vm.uspace = 16384
 vm.minaddress = 0
 vm.maxaddress = -4096
 vm.guard_size = 1048576
 vm.thread_guard_size = 65536
 vm.user_va0_disable = 1
 vm.anonmin = 10
 vm.filemin = 10
 vm.execmin = 5
 vm.anonmax = 80
 vm.filemax = 50
 vm.execmax = 30
 vm.inactivepct = 33
 vm.swap_encrypt = 1
 vm.bufcache = 15
 vm.bufmem = 6926336
 vm.bufmem_lowater = 2516480
 vm.bufmem_hiwater = 2013184
 ----
 
 And...
 
 Maybe I've found it; inverted logic introduced in pmap.c rev. 1.108:
 
 ----
 Index: sys/arch/powerpc/oea/pmap.c
 ===================================================================
 RCS file: /home/netbsd/src/sys/arch/powerpc/oea/pmap.c,v
 retrieving revision 1.113
 diff -p -u -r1.113 pmap.c
 --- sys/arch/powerpc/oea/pmap.c	9 Apr 2022 23:38:32 -0000	1.113
 +++ sys/arch/powerpc/oea/pmap.c	8 May 2022 11:40:13 -0000
 @@ -674,7 +674,7 @@ static inline void
   pmap_pp_attr_clear(struct pmap_page *pp, int ptebit)
   {
   
 -	pp->pp_attrs &= ptebit;
 +	pp->pp_attrs &= ~ptebit;
   }
   
   static inline void
 ----
 
 Referenced/modified bits never get cleared this way...
 
 I will commit soon if full ATF passes on sandpoint.
 
 Thanks,
 rin
 


Home | Main Index | Thread Index | Old Index