From: YangHui <yanghui....@gmail.com>

Also it rely on inheritance,But there are some things you need't inheriting
if all children oom_score_adj is -1000,the oom is meaningless

Signed-off-by: YangHui <yanghui....@gmail.com>
---
 include/uapi/linux/oom.h | 1 +
 kernel/fork.c            | 4 ++--
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/include/uapi/linux/oom.h b/include/uapi/linux/oom.h
index 750b1c5..0251f23 100644
--- a/include/uapi/linux/oom.h
+++ b/include/uapi/linux/oom.h
@@ -8,6 +8,7 @@
  */
 #define OOM_SCORE_ADJ_MIN      (-1000)
 #define OOM_SCORE_ADJ_MAX      1000
+#define OOM_SCORE_ADJ_DEFAULT  0
 
 /*
  * /proc/<pid>/oom_adj set to -17 protects from the oom killer for legacy
diff --git a/kernel/fork.c b/kernel/fork.c
index 4d32190..9dfa388 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -1584,8 +1584,8 @@ static int copy_signal(unsigned long clone_flags, struct 
task_struct *tsk)
        tty_audit_fork(sig);
        sched_autogroup_fork(sig);
 
-       sig->oom_score_adj = current->signal->oom_score_adj;
-       sig->oom_score_adj_min = current->signal->oom_score_adj_min;
+       sig->oom_score_adj = OOM_SCORE_ADJ_DEFAULT;
+       sig->oom_score_adj_min = OOM_SCORE_ADJ_MIN;
 
        mutex_init(&sig->cred_guard_mutex);
        mutex_init(&sig->exec_update_mutex);
-- 
2.7.4

Reply via email to