From: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
To: kosaki.motohiro@jp.fujitsu.com
Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org,
akpm@linux-foundation.org, caiqian@redhat.com,
rientjes@google.com, hughd@google.com,
kamezawa.hiroyu@jp.fujitsu.com, minchan.kim@gmail.com,
oleg@redhat.com
Subject: [PATCH 1/5] oom: improve dump_tasks() show items
Date: Fri, 20 May 2011 17:01:38 +0900 [thread overview]
Message-ID: <4DD61FE2.1020303@jp.fujitsu.com> (raw)
In-Reply-To: <4DD61F80.1020505@jp.fujitsu.com>
Recently, oom internal logic was dramatically changed. Thus
dump_tasks() doesn't show enough information for bug report
analysis. it has some meaningless items and don't have some
oom score related items.
This patch adapt displaying fields to new oom logic.
details
--------
removed: pid (we always kill process. don't need thread id),
signal->oom_adj (we no longer uses it internally)
cpu (we no longer uses it)
added: ppid (we often kill sacrifice child process)
swap (it's accounted)
modify: RSS (account mm->nr_ptes too)
<old>
[ pid ] uid tgid total_vm rss cpu oom_adj oom_score_adj name
[ 3886] 0 3886 2893 441 1 0 0 bash
[ 3905] 0 3905 29361 25833 0 0 0 memtoy
<new>
[ pid] ppid uid total_vm rss swap score_adj name
[ 417] 1 0 3298 12 184 -1000 udevd
[ 830] 1 0 1776 11 16 0 system-setup-ke
[ 973] 1 0 61179 35 116 0 rsyslogd
[ 1733] 1732 0 1052337 958582 0 0 memtoy
Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
---
mm/oom_kill.c | 15 +++++++++------
1 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/mm/oom_kill.c b/mm/oom_kill.c
index f52e85c..43d32ae 100644
--- a/mm/oom_kill.c
+++ b/mm/oom_kill.c
@@ -355,7 +355,7 @@ static void dump_tasks(const struct mem_cgroup *mem, const nodemask_t *nodemask)
struct task_struct *p;
struct task_struct *task;
- pr_info("[ pid ] uid tgid total_vm rss cpu oom_adj oom_score_adj name\n");
+ pr_info("[ pid] ppid uid total_vm rss swap score_adj name\n");
for_each_process(p) {
if (oom_unkillable_task(p, mem, nodemask))
continue;
@@ -370,11 +370,14 @@ static void dump_tasks(const struct mem_cgroup *mem, const nodemask_t *nodemask)
continue;
}
- pr_info("[%5d] %5d %5d %8lu %8lu %3u %3d %5d %s\n",
- task->pid, task_uid(task), task->tgid,
- task->mm->total_vm, get_mm_rss(task->mm),
- task_cpu(task), task->signal->oom_adj,
- task->signal->oom_score_adj, task->comm);
+ pr_info("[%6d] %6d %5d %8lu %8lu %8lu %9d %s\n",
+ task_tgid_nr(task), task_tgid_nr(task->real_parent),
+ task_uid(task),
+ task->mm->total_vm,
+ get_mm_rss(task->mm) + p->mm->nr_ptes,
+ get_mm_counter(p->mm, MM_SWAPENTS),
+ task->signal->oom_score_adj,
+ task->comm);
task_unlock(task);
}
}
--
1.7.3.1
WARNING: multiple messages have this Message-ID (diff)
From: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
To: kosaki.motohiro@jp.fujitsu.com
Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org,
akpm@linux-foundation.org, caiqian@redhat.com,
rientjes@google.com, hughd@google.com,
kamezawa.hiroyu@jp.fujitsu.com, minchan.kim@gmail.com,
oleg@redhat.com
Subject: [PATCH 1/5] oom: improve dump_tasks() show items
Date: Fri, 20 May 2011 17:01:38 +0900 [thread overview]
Message-ID: <4DD61FE2.1020303@jp.fujitsu.com> (raw)
In-Reply-To: <4DD61F80.1020505@jp.fujitsu.com>
Recently, oom internal logic was dramatically changed. Thus
dump_tasks() doesn't show enough information for bug report
analysis. it has some meaningless items and don't have some
oom score related items.
This patch adapt displaying fields to new oom logic.
details
--------
removed: pid (we always kill process. don't need thread id),
signal->oom_adj (we no longer uses it internally)
cpu (we no longer uses it)
added: ppid (we often kill sacrifice child process)
swap (it's accounted)
modify: RSS (account mm->nr_ptes too)
<old>
[ pid ] uid tgid total_vm rss cpu oom_adj oom_score_adj name
[ 3886] 0 3886 2893 441 1 0 0 bash
[ 3905] 0 3905 29361 25833 0 0 0 memtoy
<new>
[ pid] ppid uid total_vm rss swap score_adj name
[ 417] 1 0 3298 12 184 -1000 udevd
[ 830] 1 0 1776 11 16 0 system-setup-ke
[ 973] 1 0 61179 35 116 0 rsyslogd
[ 1733] 1732 0 1052337 958582 0 0 memtoy
Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
---
mm/oom_kill.c | 15 +++++++++------
1 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/mm/oom_kill.c b/mm/oom_kill.c
index f52e85c..43d32ae 100644
--- a/mm/oom_kill.c
+++ b/mm/oom_kill.c
@@ -355,7 +355,7 @@ static void dump_tasks(const struct mem_cgroup *mem, const nodemask_t *nodemask)
struct task_struct *p;
struct task_struct *task;
- pr_info("[ pid ] uid tgid total_vm rss cpu oom_adj oom_score_adj name\n");
+ pr_info("[ pid] ppid uid total_vm rss swap score_adj name\n");
for_each_process(p) {
if (oom_unkillable_task(p, mem, nodemask))
continue;
@@ -370,11 +370,14 @@ static void dump_tasks(const struct mem_cgroup *mem, const nodemask_t *nodemask)
continue;
}
- pr_info("[%5d] %5d %5d %8lu %8lu %3u %3d %5d %s\n",
- task->pid, task_uid(task), task->tgid,
- task->mm->total_vm, get_mm_rss(task->mm),
- task_cpu(task), task->signal->oom_adj,
- task->signal->oom_score_adj, task->comm);
+ pr_info("[%6d] %6d %5d %8lu %8lu %8lu %9d %s\n",
+ task_tgid_nr(task), task_tgid_nr(task->real_parent),
+ task_uid(task),
+ task->mm->total_vm,
+ get_mm_rss(task->mm) + p->mm->nr_ptes,
+ get_mm_counter(p->mm, MM_SWAPENTS),
+ task->signal->oom_score_adj,
+ task->comm);
task_unlock(task);
}
}
--
1.7.3.1
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2011-05-20 8:01 UTC|newest]
Thread overview: 118+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-20 8:00 [PATCH v2 0/5] Fix oom killer doesn't work at all if system have > gigabytes memory (aka CAI founded issue) KOSAKI Motohiro
2011-05-20 8:00 ` KOSAKI Motohiro
2011-05-20 8:01 ` KOSAKI Motohiro [this message]
2011-05-20 8:01 ` [PATCH 1/5] oom: improve dump_tasks() show items KOSAKI Motohiro
2011-05-23 22:16 ` David Rientjes
2011-05-23 22:16 ` David Rientjes
2011-05-20 8:02 ` [PATCH 2/5] oom: kill younger process first KOSAKI Motohiro
2011-05-20 8:02 ` KOSAKI Motohiro
2011-05-23 2:37 ` Minchan Kim
2011-05-23 2:37 ` Minchan Kim
2011-05-23 22:20 ` David Rientjes
2011-05-23 22:20 ` David Rientjes
2011-05-20 8:03 ` [PATCH 3/5] oom: oom-killer don't use proportion of system-ram internally KOSAKI Motohiro
2011-05-20 8:03 ` KOSAKI Motohiro
2011-05-23 3:59 ` Minchan Kim
2011-05-23 3:59 ` Minchan Kim
2011-05-24 1:14 ` KOSAKI Motohiro
2011-05-24 1:14 ` KOSAKI Motohiro
2011-05-24 1:32 ` Minchan Kim
2011-05-24 1:32 ` Minchan Kim
2011-05-23 4:02 ` Minchan Kim
2011-05-23 4:02 ` Minchan Kim
2011-05-24 1:44 ` KOSAKI Motohiro
2011-05-24 1:44 ` KOSAKI Motohiro
2011-05-24 3:11 ` KOSAKI Motohiro
2011-05-24 3:11 ` KOSAKI Motohiro
2011-05-23 22:28 ` David Rientjes
2011-05-23 22:28 ` David Rientjes
2011-05-23 22:48 ` David Rientjes
2011-05-23 22:48 ` David Rientjes
2011-05-24 1:21 ` KOSAKI Motohiro
2011-05-24 1:21 ` KOSAKI Motohiro
2011-05-24 8:32 ` CAI Qian
2011-05-24 8:32 ` CAI Qian
2011-05-26 7:08 ` CAI Qian
2011-05-26 7:08 ` CAI Qian
2011-05-27 19:12 ` David Rientjes
2011-05-27 19:12 ` David Rientjes
2011-05-24 2:07 ` KOSAKI Motohiro
2011-05-24 2:07 ` KOSAKI Motohiro
2011-05-26 9:34 ` CAI Qian
2011-05-26 9:34 ` CAI Qian
2011-05-26 9:56 ` KOSAKI Motohiro
2011-05-26 9:56 ` KOSAKI Motohiro
2011-05-20 8:04 ` [PATCH 4/5] oom: don't kill random process KOSAKI Motohiro
2011-05-20 8:04 ` KOSAKI Motohiro
2011-05-23 4:31 ` Minchan Kim
2011-05-23 4:31 ` Minchan Kim
2011-05-24 1:53 ` KOSAKI Motohiro
2011-05-24 1:53 ` KOSAKI Motohiro
2011-05-24 8:46 ` Minchan Kim
2011-05-24 8:46 ` Minchan Kim
2011-05-24 8:49 ` KOSAKI Motohiro
2011-05-24 8:49 ` KOSAKI Motohiro
2011-05-24 9:04 ` Minchan Kim
2011-05-24 9:04 ` Minchan Kim
2011-05-24 9:09 ` KOSAKI Motohiro
2011-05-24 9:09 ` KOSAKI Motohiro
2011-05-24 9:20 ` Minchan Kim
2011-05-24 9:20 ` Minchan Kim
2011-05-24 9:38 ` KOSAKI Motohiro
2011-05-24 9:38 ` KOSAKI Motohiro
2011-05-23 22:32 ` David Rientjes
2011-05-23 22:32 ` David Rientjes
2011-05-24 1:35 ` KOSAKI Motohiro
2011-05-24 1:35 ` KOSAKI Motohiro
2011-05-24 1:39 ` David Rientjes
2011-05-24 1:39 ` David Rientjes
2011-05-24 1:55 ` KOSAKI Motohiro
2011-05-24 1:55 ` KOSAKI Motohiro
2011-05-24 1:58 ` David Rientjes
2011-05-24 1:58 ` David Rientjes
2011-05-24 2:03 ` KOSAKI Motohiro
2011-05-24 2:03 ` KOSAKI Motohiro
2011-05-25 23:50 ` David Rientjes
2011-05-25 23:50 ` David Rientjes
2011-05-30 1:17 ` KOSAKI Motohiro
2011-05-30 1:17 ` KOSAKI Motohiro
2011-05-31 4:48 ` David Rientjes
2011-05-31 4:48 ` David Rientjes
2011-05-31 4:54 ` KOSAKI Motohiro
2011-05-31 4:54 ` KOSAKI Motohiro
2011-05-20 8:05 ` [PATCH 5/5] oom: merge oom_kill_process() with oom_kill_task() KOSAKI Motohiro
2011-05-20 8:05 ` KOSAKI Motohiro
2011-05-31 1:33 ` [PATCH v2 0/5] Fix oom killer doesn't work at all if system have > gigabytes memory (aka CAI founded issue) CAI Qian
2011-05-31 1:33 ` CAI Qian
2011-05-31 4:10 ` KOSAKI Motohiro
2011-05-31 4:10 ` KOSAKI Motohiro
2011-05-31 4:14 ` CAI Qian
2011-05-31 4:14 ` CAI Qian
2011-05-31 4:34 ` KOSAKI Motohiro
2011-05-31 4:34 ` KOSAKI Motohiro
2011-05-31 4:49 ` KOSAKI Motohiro
2011-05-31 4:49 ` KOSAKI Motohiro
2011-05-31 4:32 ` KOSAKI Motohiro
2011-05-31 4:32 ` KOSAKI Motohiro
2011-05-31 4:52 ` CAI Qian
2011-05-31 4:52 ` CAI Qian
2011-05-31 7:04 ` KOSAKI Motohiro
2011-05-31 7:04 ` KOSAKI Motohiro
2011-05-31 7:50 ` CAI Qian
2011-05-31 7:50 ` CAI Qian
2011-05-31 7:56 ` KOSAKI Motohiro
2011-05-31 7:56 ` KOSAKI Motohiro
2011-05-31 7:59 ` CAI Qian
2011-05-31 7:59 ` CAI Qian
2011-05-31 8:11 ` KOSAKI Motohiro
2011-05-31 8:11 ` KOSAKI Motohiro
2011-05-31 10:01 ` KOSAKI Motohiro
2011-05-31 10:01 ` KOSAKI Motohiro
2011-06-01 1:17 ` CAI Qian
2011-06-01 1:17 ` CAI Qian
2011-06-01 3:32 ` Minchan Kim
2011-06-01 3:32 ` Minchan Kim
2011-06-06 3:07 ` KOSAKI Motohiro
2011-06-06 3:07 ` KOSAKI Motohiro
2011-06-06 14:44 ` Minchan Kim
2011-06-06 14:44 ` Minchan Kim
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4DD61FE2.1020303@jp.fujitsu.com \
--to=kosaki.motohiro@jp.fujitsu.com \
--cc=akpm@linux-foundation.org \
--cc=caiqian@redhat.com \
--cc=hughd@google.com \
--cc=kamezawa.hiroyu@jp.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=minchan.kim@gmail.com \
--cc=oleg@redhat.com \
--cc=rientjes@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.