memcg: add mm_vmscan_memcg_isolate tracepoint
Memcg also need to trace page isolation information as global reclaim. This patch does it. Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Acked-by: Mel Gorman <mel@csn.ul.ie> Acked-by: Balbir Singh <balbir@linux.vnet.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
e17613c39b
commit
cc8e970c3c
2 changed files with 21 additions and 0 deletions
|
@ -231,6 +231,21 @@ DEFINE_EVENT(mm_vmscan_lru_isolate_template, mm_vmscan_lru_isolate,
|
||||||
|
|
||||||
);
|
);
|
||||||
|
|
||||||
|
DEFINE_EVENT(mm_vmscan_lru_isolate_template, mm_vmscan_memcg_isolate,
|
||||||
|
|
||||||
|
TP_PROTO(int order,
|
||||||
|
unsigned long nr_requested,
|
||||||
|
unsigned long nr_scanned,
|
||||||
|
unsigned long nr_taken,
|
||||||
|
unsigned long nr_lumpy_taken,
|
||||||
|
unsigned long nr_lumpy_dirty,
|
||||||
|
unsigned long nr_lumpy_failed,
|
||||||
|
int isolate_mode),
|
||||||
|
|
||||||
|
TP_ARGS(order, nr_requested, nr_scanned, nr_taken, nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, isolate_mode)
|
||||||
|
|
||||||
|
);
|
||||||
|
|
||||||
TRACE_EVENT(mm_vmscan_writepage,
|
TRACE_EVENT(mm_vmscan_writepage,
|
||||||
|
|
||||||
TP_PROTO(struct page *page,
|
TP_PROTO(struct page *page,
|
||||||
|
|
|
@ -51,6 +51,8 @@
|
||||||
|
|
||||||
#include <asm/uaccess.h>
|
#include <asm/uaccess.h>
|
||||||
|
|
||||||
|
#include <trace/events/vmscan.h>
|
||||||
|
|
||||||
struct cgroup_subsys mem_cgroup_subsys __read_mostly;
|
struct cgroup_subsys mem_cgroup_subsys __read_mostly;
|
||||||
#define MEM_CGROUP_RECLAIM_RETRIES 5
|
#define MEM_CGROUP_RECLAIM_RETRIES 5
|
||||||
struct mem_cgroup *root_mem_cgroup __read_mostly;
|
struct mem_cgroup *root_mem_cgroup __read_mostly;
|
||||||
|
@ -1007,6 +1009,10 @@ unsigned long mem_cgroup_isolate_pages(unsigned long nr_to_scan,
|
||||||
}
|
}
|
||||||
|
|
||||||
*scanned = scan;
|
*scanned = scan;
|
||||||
|
|
||||||
|
trace_mm_vmscan_memcg_isolate(0, nr_to_scan, scan, nr_taken,
|
||||||
|
0, 0, 0, mode);
|
||||||
|
|
||||||
return nr_taken;
|
return nr_taken;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue