Swapped memory limited to about 500MB for a process ?

Sriram Gorti gsriram at gmail.com
Fri Sep 14 03:06:50 UTC 2012


On Wed, Sep 12, 2012 at 7:33 PM, Mickaël Canévet <canevet at embl.fr> wrote:
> On Wed, 2012-09-12 at 10:03 -0400, Lowell Gilbert wrote:
>> Mickaël Canévet <canevet at embl.fr> writes:
>>
>> > On Tue, 2012-09-11 at 13:05 -0400, Lowell Gilbert wrote:
>> >> Mickaël Canévet <canevet at 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


More information about the freebsd-questions mailing list