diff options
| author | David Rientjes <rientjes@google.com> | 2007-10-17 02:25:56 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-17 11:42:46 -0400 |
| commit | fe071d7e8aae5745c009c808bb8933f22a9e305a (patch) | |
| tree | 757dc7c41a7b56974c383743103fb711c976c288 /Documentation/sysctl | |
| parent | ff0ceb9deb6eb017f52900b708d49cfa77bf25fb (diff) | |
oom: add oom_kill_allocating_task sysctl
Adds a new sysctl, 'oom_kill_allocating_task', which will automatically kill
the OOM-triggering task instead of scanning through the tasklist to find a
memory-hogging target. This is helpful for systems with an insanely large
number of tasks where scanning the tasklist significantly degrades
performance.
Cc: Andrea Arcangeli <andrea@suse.de>
Acked-by: Christoph Lameter <clameter@sgi.com>
Signed-off-by: David Rientjes <rientjes@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'Documentation/sysctl')
| -rw-r--r-- | Documentation/sysctl/vm.txt | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/Documentation/sysctl/vm.txt b/Documentation/sysctl/vm.txt index a0ccc5b60260..17346da636e7 100644 --- a/Documentation/sysctl/vm.txt +++ b/Documentation/sysctl/vm.txt | |||
| @@ -31,6 +31,7 @@ Currently, these files are in /proc/sys/vm: | |||
| 31 | - min_unmapped_ratio | 31 | - min_unmapped_ratio |
| 32 | - min_slab_ratio | 32 | - min_slab_ratio |
| 33 | - panic_on_oom | 33 | - panic_on_oom |
| 34 | - oom_kill_allocating_task | ||
| 34 | - mmap_min_address | 35 | - mmap_min_address |
| 35 | - numa_zonelist_order | 36 | - numa_zonelist_order |
| 36 | 37 | ||
| @@ -220,6 +221,27 @@ The default value is 0. | |||
| 220 | 1 and 2 are for failover of clustering. Please select either | 221 | 1 and 2 are for failover of clustering. Please select either |
| 221 | according to your policy of failover. | 222 | according to your policy of failover. |
| 222 | 223 | ||
| 224 | ============================================================= | ||
| 225 | |||
| 226 | oom_kill_allocating_task | ||
| 227 | |||
| 228 | This enables or disables killing the OOM-triggering task in | ||
| 229 | out-of-memory situations. | ||
| 230 | |||
| 231 | If this is set to zero, the OOM killer will scan through the entire | ||
| 232 | tasklist and select a task based on heuristics to kill. This normally | ||
| 233 | selects a rogue memory-hogging task that frees up a large amount of | ||
| 234 | memory when killed. | ||
| 235 | |||
| 236 | If this is set to non-zero, the OOM killer simply kills the task that | ||
| 237 | triggered the out-of-memory condition. This avoids the expensive | ||
| 238 | tasklist scan. | ||
| 239 | |||
| 240 | If panic_on_oom is selected, it takes precedence over whatever value | ||
| 241 | is used in oom_kill_allocating_task. | ||
| 242 | |||
| 243 | The default value is 0. | ||
| 244 | |||
| 223 | ============================================================== | 245 | ============================================================== |
| 224 | 246 | ||
| 225 | mmap_min_addr | 247 | mmap_min_addr |
