[PATCH] docs: fix misinformation about overcommit_memory
Someone complained about the docs for vm_overcommit_memory being wrong. This patch copies the text from the vm documentation into procfs. Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
ddb99f3d35
commit
af97c7220a
|
@ -1241,16 +1241,38 @@ swap-intensive.
|
||||||
overcommit_memory
|
overcommit_memory
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
This file contains one value. The following algorithm is used to decide if
|
Controls overcommit of system memory, possibly allowing processes
|
||||||
there's enough memory: if the value of overcommit_memory is positive, then
|
to allocate (but not use) more memory than is actually available.
|
||||||
there's always enough memory. This is a useful feature, since programs often
|
|
||||||
malloc() huge amounts of memory 'just in case', while they only use a small
|
|
||||||
part of it. Leaving this value at 0 will lead to the failure of such a huge
|
|
||||||
malloc(), when in fact the system has enough memory for the program to run.
|
|
||||||
|
|
||||||
On the other hand, enabling this feature can cause you to run out of memory
|
|
||||||
and thrash the system to death, so large and/or important servers will want to
|
0 - Heuristic overcommit handling. Obvious overcommits of
|
||||||
set this value to 0.
|
address space are refused. Used for a typical system. It
|
||||||
|
ensures a seriously wild allocation fails while allowing
|
||||||
|
overcommit to reduce swap usage. root is allowed to
|
||||||
|
allocate slighly more memory in this mode. This is the
|
||||||
|
default.
|
||||||
|
|
||||||
|
1 - Always overcommit. Appropriate for some scientific
|
||||||
|
applications.
|
||||||
|
|
||||||
|
2 - Don't overcommit. The total address space commit
|
||||||
|
for the system is not permitted to exceed swap plus a
|
||||||
|
configurable percentage (default is 50) of physical RAM.
|
||||||
|
Depending on the percentage you use, in most situations
|
||||||
|
this means a process will not be killed while attempting
|
||||||
|
to use already-allocated memory but will receive errors
|
||||||
|
on memory allocation as appropriate.
|
||||||
|
|
||||||
|
overcommit_ratio
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Percentage of physical memory size to include in overcommit calculations
|
||||||
|
(see above.)
|
||||||
|
|
||||||
|
Memory allocation limit = swapspace + physmem * (overcommit_ratio / 100)
|
||||||
|
|
||||||
|
swapspace = total size of all swap areas
|
||||||
|
physmem = size of physical memory in system
|
||||||
|
|
||||||
nr_hugepages and hugetlb_shm_group
|
nr_hugepages and hugetlb_shm_group
|
||||||
----------------------------------
|
----------------------------------
|
||||||
|
|
Loading…
Reference in New Issue