On Fri, 2012-09-14 at 08:36 +0530, Sriram Gorti wrote: > On Wed, Sep 12, 2012 at 7:33 PM, Mickaël Canévet <cane...@embl.fr> wrote: > > On Wed, 2012-09-12 at 10:03 -0400, Lowell Gilbert wrote: > >> Mickaël Canévet <cane...@embl.fr> writes: > >> > >> > On Tue, 2012-09-11 at 13:05 -0400, Lowell Gilbert wrote: > >> >> Mickaël Canévet <cane...@embl.fr> writes: > >> >> > >> >> > I was impacted by a memory leak that has been fixed by this patch: > >> >> > http://people.freebsd.org/~rmacklem/namei-leak.patch > >> >> > > >> >> > What I noticed when the server was paging is that it seems that only > >> >> > about 500MB of my 4GB swap partition was used before crashing. I was > >> >> > wondering why it didn't take the whole 4GB up to the crash of the > >> >> > server > >> >> > because of lake of memory (that would let me more time to react). > >> >> > > >> >> > Is there such king of setting that prevent a process to put more then > >> >> > 500MB of data in swap ? > >> >> > >> >> limits(1)? > >> >> > >> > Thank you for your answer. > >> > > >> > Here is the result of limits: > >> > > >> > limits > >> > Resource limits (current): > >> > cputime infinity secs > >> > filesize infinity kB > >> > datasize 33554432 kB > >> > stacksize 524288 kB > >> > coredumpsize infinity kB > >> > memoryuse infinity kB > >> > memorylocked infinity kB > >> > maxprocesses 5547 > >> > openfiles 11095 > >> > sbsize infinity bytes > >> > vmemoryuse infinity kB > >> > pseudo-terminals infinity > >> > swapuse infinity kB > >> > > >> > swapuse is set to unlimited, but stacksize is set to 512MB. > >> > Is it the stacksize setting that prevent my kernel to swap more then > >> > 512MB ? > >> > >> No, I don't think so. datasize was the parameter I was most > >> suspecting; and it assumes that a particular process was causing the > >> crash (which is unlikely; the OS is supposed to protect you against > >> it). > >> > >> Most likely, the crash was not directly caused by a shortage of virtual > >> memory. You would have to diagnose through crash dumps, but it could be > >> that some more specific resource was exhausted. Or perhaps the memory > >> leak left dangling references in a vnode. > >> > > We also had a some what similar experience - swap partition was not > being fully utilized (but no NFS in use). Found that the size of > SWAPMETA limits the total usable swap space. This is more likely with > a custom config and tweaked limits. > > vmstat -z | egrep "LIMIT|SWAPMETA" > > --- sriram > > > > > > OK, > > > > Thanks a lot for your explanations. > > > > Cheers, > > Mickaël >
I have this: # vmstat -z | egrep "LIMIT|SWAPMETA" ITEM SIZE LIMIT USED FREE REQ FAIL SLEEP SWAPMETA: 288, 116519, 1610, 6437, 559839, 0, 0 If this number (116519) correspond to the number of memory pages and as I have 4k page size (pagesize command reports 4096), SWAPMETA is limited to 466076 kB which is pretty close to the "about" 500MB I can see on my monitoring graphs. If this is the explanation of what happens, how can I tune this ? Should I use larger pages (superpages seems to be enable by default on FreeBSD9-amd64) ? Is there a way to increase the limit of swapmeta ? Thanks, Mickaël
signature.asc
Description: This is a digitally signed message part