Эх сурвалжийг харах

mm/oom_kill.c: suppress unnecessary "sharing same memory" message

oom_kill_process() sends SIGKILL to other thread groups sharing victim's
mm.  But printing

  "Kill process %d (%s) sharing same memory\n"

lines makes no sense if they already have pending SIGKILL.  This patch
reduces the "Kill process" lines by printing that line with info level
only if SIGKILL is not pending.

Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Acked-by: Michal Hocko <mhocko@suse.com>
Cc: David Rientjes <rientjes@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Tetsuo Handa 9 жил өмнө
parent
commit
840807a8f4
1 өөрчлөгдсөн 3 нэмэгдсэн , 1 устгасан
  1. 3 1
      mm/oom_kill.c

+ 3 - 1
mm/oom_kill.c

@@ -583,9 +583,11 @@ void oom_kill_process(struct oom_control *oc, struct task_struct *p,
 		    !(p->flags & PF_KTHREAD)) {
 		    !(p->flags & PF_KTHREAD)) {
 			if (p->signal->oom_score_adj == OOM_SCORE_ADJ_MIN)
 			if (p->signal->oom_score_adj == OOM_SCORE_ADJ_MIN)
 				continue;
 				continue;
+			if (fatal_signal_pending(p))
+				continue;
 
 
 			task_lock(p);	/* Protect ->comm from prctl() */
 			task_lock(p);	/* Protect ->comm from prctl() */
-			pr_err("Kill process %d (%s) sharing same memory\n",
+			pr_info("Kill process %d (%s) sharing same memory\n",
 				task_pid_nr(p), p->comm);
 				task_pid_nr(p), p->comm);
 			task_unlock(p);
 			task_unlock(p);
 			do_send_sig_info(SIGKILL, SEND_SIG_FORCED, p, true);
 			do_send_sig_info(SIGKILL, SEND_SIG_FORCED, p, true);