diff options
| author | Yi-wei Zhao <gbjc64@motorola.com> | 2014-12-30 17:38:04 -0600 |
|---|---|---|
| committer | Mister Oyster <oysterized@gmail.com> | 2017-04-11 11:00:03 +0200 |
| commit | f7b445954612ca791c14598e9d5afaced40f76fc (patch) | |
| tree | 3c6ee10400149812237907d373ad8570d72f15c0 /fs/proc | |
| parent | 8e0a290d5efb120346f38a0e2e8ef32bc3b9a71f (diff) | |
fs: support task's adj rbtree
Add (or del) a task to (or from) task's adj rbtree
when its oom_score_adj is modified.
Change-Id: I8a9490c6f30f42f6e4ed8f7fa9249f6da6177ae2
Signed-off-by: Hong-Mei Li <a21834@motorola.com>
Signed-off-by: Yi-wei Zhao <gbjc64@motorola.com>
Reviewed-on: http://gerrit.mot.com/701206
SLTApproved: Slta Waiver <sltawvr@motorola.com>
Tested-by: Jira Key <jirakey@motorola.com>
Submit-Approved: Jira Key <jirakey@motorola.com>
Diffstat (limited to 'fs/proc')
| -rw-r--r-- | fs/proc/base.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/proc/base.c b/fs/proc/base.c index d909b2f18..e16a126b8 100644 --- a/fs/proc/base.c +++ b/fs/proc/base.c @@ -1003,7 +1003,9 @@ static ssize_t oom_adj_write(struct file *file, const char __user *buf, current->comm, task_pid_nr(current), task_pid_nr(task), task_pid_nr(task)); + delete_from_adj_tree(task); task->signal->oom_score_adj = oom_adj; + add_2_adj_tree(task); trace_oom_score_adj_update(task); err_sighand: unlock_task_sighand(task, &flags); @@ -1118,7 +1120,10 @@ static ssize_t oom_score_adj_write(struct file *file, const char __user *buf, goto err_sighand; } + delete_from_adj_tree(task); task->signal->oom_score_adj = (short)oom_score_adj; + add_2_adj_tree(task); + if (has_capability_noaudit(current, CAP_SYS_RESOURCE)) task->signal->oom_score_adj_min = (short)oom_score_adj; trace_oom_score_adj_update(task); |
