diff options
author | David Rientjes <rientjes@google.com> | 2010-08-09 20:19:47 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-09 23:45:02 -0400 |
commit | 51b1bd2ace1595b72956224deda349efa880b693 (patch) | |
tree | 82732bb33d26379c05494dcdba8ea390ae0621db /Documentation | |
parent | a63d83f427fbce97a6cea0db2e64b0eb8435cd10 (diff) |
oom: deprecate oom_adj tunable
/proc/pid/oom_adj is now deprecated so that that it may eventually be
removed. The target date for removal is August 2012.
A warning will be printed to the kernel log if a task attempts to use this
interface. Future warning will be suppressed until the kernel is rebooted
to prevent spamming the kernel log.
Signed-off-by: David Rientjes <rientjes@google.com>
Cc: Nick Piggin <npiggin@suse.de>
Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: Balbir Singh <balbir@in.ibm.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/feature-removal-schedule.txt | 25 | ||||
-rw-r--r-- | Documentation/filesystems/proc.txt | 3 |
2 files changed, 28 insertions, 0 deletions
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt index 71f0fea1058f..56cee4727b1a 100644 --- a/Documentation/feature-removal-schedule.txt +++ b/Documentation/feature-removal-schedule.txt | |||
@@ -151,6 +151,31 @@ Who: Eric Biederman <ebiederm@xmission.com> | |||
151 | 151 | ||
152 | --------------------------- | 152 | --------------------------- |
153 | 153 | ||
154 | What: /proc/<pid>/oom_adj | ||
155 | When: August 2012 | ||
156 | Why: /proc/<pid>/oom_adj allows userspace to influence the oom killer's | ||
157 | badness heuristic used to determine which task to kill when the kernel | ||
158 | is out of memory. | ||
159 | |||
160 | The badness heuristic has since been rewritten since the introduction of | ||
161 | this tunable such that its meaning is deprecated. The value was | ||
162 | implemented as a bitshift on a score generated by the badness() | ||
163 | function that did not have any precise units of measure. With the | ||
164 | rewrite, the score is given as a proportion of available memory to the | ||
165 | task allocating pages, so using a bitshift which grows the score | ||
166 | exponentially is, thus, impossible to tune with fine granularity. | ||
167 | |||
168 | A much more powerful interface, /proc/<pid>/oom_score_adj, was | ||
169 | introduced with the oom killer rewrite that allows users to increase or | ||
170 | decrease the badness() score linearly. This interface will replace | ||
171 | /proc/<pid>/oom_adj. | ||
172 | |||
173 | A warning will be emitted to the kernel log if an application uses this | ||
174 | deprecated interface. After it is printed once, future warnings will be | ||
175 | suppressed until the kernel is rebooted. | ||
176 | |||
177 | --------------------------- | ||
178 | |||
154 | What: remove EXPORT_SYMBOL(kernel_thread) | 179 | What: remove EXPORT_SYMBOL(kernel_thread) |
155 | When: August 2006 | 180 | When: August 2006 |
156 | Files: arch/*/kernel/*_ksyms.c | 181 | Files: arch/*/kernel/*_ksyms.c |
diff --git a/Documentation/filesystems/proc.txt b/Documentation/filesystems/proc.txt index cf1295c2bb66..a6aca8740883 100644 --- a/Documentation/filesystems/proc.txt +++ b/Documentation/filesystems/proc.txt | |||
@@ -1285,6 +1285,9 @@ scaled linearly with /proc/<pid>/oom_score_adj. | |||
1285 | Writing to /proc/<pid>/oom_score_adj or /proc/<pid>/oom_adj will change the | 1285 | Writing to /proc/<pid>/oom_score_adj or /proc/<pid>/oom_adj will change the |
1286 | other with its scaled value. | 1286 | other with its scaled value. |
1287 | 1287 | ||
1288 | NOTICE: /proc/<pid>/oom_adj is deprecated and will be removed, please see | ||
1289 | Documentation/feature-removal-schedule.txt. | ||
1290 | |||
1288 | Caveat: when a parent task is selected, the oom killer will sacrifice any first | 1291 | Caveat: when a parent task is selected, the oom killer will sacrifice any first |
1289 | generation children with seperate address spaces instead, if possible. This | 1292 | generation children with seperate address spaces instead, if possible. This |
1290 | avoids servers and important system daemons from being killed and loses the | 1293 | avoids servers and important system daemons from being killed and loses the |