Commit 9b0975a2 authored by Keika Kobayashi's avatar Keika Kobayashi Committed by Linus Torvalds

per-task-delay-accounting: update document and getdelays.c for memory reclaim

Update document and make getdelays.c show delay accounting for memory reclaim.

For making a distinction between "swapping in pages" and "memory reclaim"
in getdelays.c, MEM is changed to SWAP.
Signed-off-by: default avatarKeika Kobayashi <kobayashi.kk@ncos.nec.co.jp>
Acked-by: default avatarBalbir Singh <balbir@linux.vnet.ibm.com>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 016ae219
...@@ -11,6 +11,7 @@ the delays experienced by a task while ...@@ -11,6 +11,7 @@ the delays experienced by a task while
a) waiting for a CPU (while being runnable) a) waiting for a CPU (while being runnable)
b) completion of synchronous block I/O initiated by the task b) completion of synchronous block I/O initiated by the task
c) swapping in pages c) swapping in pages
d) memory reclaim
and makes these statistics available to userspace through and makes these statistics available to userspace through
the taskstats interface. the taskstats interface.
...@@ -41,7 +42,7 @@ this structure. See ...@@ -41,7 +42,7 @@ this structure. See
include/linux/taskstats.h include/linux/taskstats.h
for a description of the fields pertaining to delay accounting. for a description of the fields pertaining to delay accounting.
It will generally be in the form of counters returning the cumulative It will generally be in the form of counters returning the cumulative
delay seen for cpu, sync block I/O, swapin etc. delay seen for cpu, sync block I/O, swapin, memory reclaim etc.
Taking the difference of two successive readings of a given Taking the difference of two successive readings of a given
counter (say cpu_delay_total) for a task will give the delay counter (say cpu_delay_total) for a task will give the delay
...@@ -94,7 +95,9 @@ CPU count real total virtual total delay total ...@@ -94,7 +95,9 @@ CPU count real total virtual total delay total
7876 92005750 100000000 24001500 7876 92005750 100000000 24001500
IO count delay total IO count delay total
0 0 0 0
MEM count delay total SWAP count delay total
0 0
RECLAIM count delay total
0 0 0 0
Get delays seen in executing a given simple command Get delays seen in executing a given simple command
...@@ -108,5 +111,7 @@ CPU count real total virtual total delay total ...@@ -108,5 +111,7 @@ CPU count real total virtual total delay total
6 4000250 4000000 0 6 4000250 4000000 0
IO count delay total IO count delay total
0 0 0 0
MEM count delay total SWAP count delay total
0 0
RECLAIM count delay total
0 0 0 0
...@@ -196,14 +196,18 @@ void print_delayacct(struct taskstats *t) ...@@ -196,14 +196,18 @@ void print_delayacct(struct taskstats *t)
" %15llu%15llu%15llu%15llu\n" " %15llu%15llu%15llu%15llu\n"
"IO %15s%15s\n" "IO %15s%15s\n"
" %15llu%15llu\n" " %15llu%15llu\n"
"MEM %15s%15s\n" "SWAP %15s%15s\n"
" %15llu%15llu\n"
"RECLAIM %12s%15s\n"
" %15llu%15llu\n", " %15llu%15llu\n",
"count", "real total", "virtual total", "delay total", "count", "real total", "virtual total", "delay total",
t->cpu_count, t->cpu_run_real_total, t->cpu_run_virtual_total, t->cpu_count, t->cpu_run_real_total, t->cpu_run_virtual_total,
t->cpu_delay_total, t->cpu_delay_total,
"count", "delay total", "count", "delay total",
t->blkio_count, t->blkio_delay_total, t->blkio_count, t->blkio_delay_total,
"count", "delay total", t->swapin_count, t->swapin_delay_total); "count", "delay total", t->swapin_count, t->swapin_delay_total,
"count", "delay total",
t->freepages_count, t->freepages_delay_total);
} }
void task_context_switch_counts(struct taskstats *t) void task_context_switch_counts(struct taskstats *t)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment