aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorPaul Menage <menage@google.com>2008-04-29 04:00:26 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-29 11:06:11 -0400
commit786083667e0ced85ce17c4c0b6c57a9f47c5b9f2 (patch)
tree4519c51c3ec7d093fe0bafbbd67204a6f7b773b3 /Documentation
parentaddf2c739d9015d3e9c0500b58a3af051cd58ea7 (diff)
Cpuset hardwall flag: add a mem_hardwall flag to cpusets
This flag provides the hardwalling properties of mem_exclusive, without enforcing the exclusivity. Either mem_hardwall or mem_exclusive is sufficient to prevent GFP_KERNEL allocations from passing outside the cpuset's assigned nodes. Signed-off-by: Paul Menage <menage@google.com> Acked-by: Paul Jackson <pj@sgi.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/cpusets.txt26
1 files changed, 14 insertions, 12 deletions
diff --git a/Documentation/cpusets.txt b/Documentation/cpusets.txt
index aa854b9b18cd..fb7b361e6eea 100644
--- a/Documentation/cpusets.txt
+++ b/Documentation/cpusets.txt
@@ -171,6 +171,7 @@ files describing that cpuset:
171 - memory_migrate flag: if set, move pages to cpusets nodes 171 - memory_migrate flag: if set, move pages to cpusets nodes
172 - cpu_exclusive flag: is cpu placement exclusive? 172 - cpu_exclusive flag: is cpu placement exclusive?
173 - mem_exclusive flag: is memory placement exclusive? 173 - mem_exclusive flag: is memory placement exclusive?
174 - mem_hardwall flag: is memory allocation hardwalled
174 - memory_pressure: measure of how much paging pressure in cpuset 175 - memory_pressure: measure of how much paging pressure in cpuset
175 176
176In addition, the root cpuset only has the following file: 177In addition, the root cpuset only has the following file:
@@ -222,17 +223,18 @@ If a cpuset is cpu or mem exclusive, no other cpuset, other than
222a direct ancestor or descendent, may share any of the same CPUs or 223a direct ancestor or descendent, may share any of the same CPUs or
223Memory Nodes. 224Memory Nodes.
224 225
225A cpuset that is mem_exclusive restricts kernel allocations for 226A cpuset that is mem_exclusive *or* mem_hardwall is "hardwalled",
226page, buffer and other data commonly shared by the kernel across 227i.e. it restricts kernel allocations for page, buffer and other data
227multiple users. All cpusets, whether mem_exclusive or not, restrict 228commonly shared by the kernel across multiple users. All cpusets,
228allocations of memory for user space. This enables configuring a 229whether hardwalled or not, restrict allocations of memory for user
229system so that several independent jobs can share common kernel data, 230space. This enables configuring a system so that several independent
230such as file system pages, while isolating each jobs user allocation in 231jobs can share common kernel data, such as file system pages, while
231its own cpuset. To do this, construct a large mem_exclusive cpuset to 232isolating each job's user allocation in its own cpuset. To do this,
232hold all the jobs, and construct child, non-mem_exclusive cpusets for 233construct a large mem_exclusive cpuset to hold all the jobs, and
233each individual job. Only a small amount of typical kernel memory, 234construct child, non-mem_exclusive cpusets for each individual job.
234such as requests from interrupt handlers, is allowed to be taken 235Only a small amount of typical kernel memory, such as requests from
235outside even a mem_exclusive cpuset. 236interrupt handlers, is allowed to be taken outside even a
237mem_exclusive cpuset.
236 238
237 239
2381.5 What is memory_pressure ? 2401.5 What is memory_pressure ?
@@ -707,7 +709,7 @@ Now you want to do something with this cpuset.
707 709
708In this directory you can find several files: 710In this directory you can find several files:
709# ls 711# ls
710cpus cpu_exclusive mems mem_exclusive tasks 712cpus cpu_exclusive mems mem_exclusive mem_hardwall tasks
711 713
712Reading them will give you information about the state of this cpuset: 714Reading them will give you information about the state of this cpuset:
713the CPUs and Memory Nodes it can use, the processes that are using 715the CPUs and Memory Nodes it can use, the processes that are using