login.conf(5) - Do vmemoryuse and memoryuse limit a process' virtual and physical memory?

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

login.conf(5) - Do vmemoryuse and memoryuse limit a process' virtual and physical memory?

Aham Brahmasmi
Namaste misc,

As a good practice, I tried to limit the virtual and physical memory
available to the svn daemon [1]. To achieve that, I read about login
classes and login.conf(5) [2]:
...
memoryuse size Maximum in core memoryuse size limit.
...
vmemoryuse size Maximum virtual memoryuse size limit.
...

I then tried to verify the meanings of vmemoryuse and memoryuse. That
led to RLIMIT_VMEM and RLIMIT_RSS. That in turn led to ulimit in
ksh(1) [3] and the following interesting line in that manpage:
...
ulimit
...
-m n
    Impose a limit of n kilobytes on the amount of physical memory used. This limit is not enforced.
...
That in turn led to a mail thread on misc titled "Large datasize - how
to limit physical memory?" [4]. I could not understand much except that
the conversation seems to be the reason behind the "This limit is not
enforced" line in the ksh(1) manpage.

So,
1) Do vmemoryuse (RLIMIT_VMEM) and memoryuse (RLIMIT_RSS, ulimit -m)
actually limit a process' virtual and physical memory?
2) If not, should I set datasize (RLIMIT_DATA, ulimit -d) to limit a
process' memory, assuming that processvirtualmemory=programsize+datasize?

Dhanyavaad.

Regards,
ab
[1] - https://subversion.apache.org/security/CVE-2015-0202-advisory.txt
[2] - https://man.openbsd.org/login.conf.5
[3] - https://man.openbsd.org/ksh.1
[4] - https://marc.info/?t=147504729300001&r=1&w=2
---------|---------|---------|---------|---------|---------|---------|--