UPSTREAM: mm/damon: add 'age' of region tracepoint support
In Damon, we can get age information by analyzing the nr_access change, But short time sampling is not effective, we have to obtain enough data for analysis through long time trace, this also means that we need to consume more cpu resources and storage space. Now the region add a new 'age' variable, we only need to get the change of age value through a little time trace, for example, age has been increasing to 141, but nr_access shows a value of 0 at the same time, Through this,we can conclude that the region has a very low nr_access value for a long time. Link: https://lkml.kernel.org/r/b9def1262af95e0dc1d0caea447886434db01161.1636989871.git.xhao@linux.alibaba.com Signed-off-by: Xin Hao <xhao@linux.alibaba.com> Reviewed-by: SeongJae Park <sj@kernel.org> Cc: Muchun Song <songmuchun@bytedance.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> (cherry picked from commit c46b0bb6a735db0b6140e12e750b5acb1b032982) Bug: 228223814 Signed-off-by: Hailong Tu <tuhailong@oppo.com> Change-Id: I39aeea71756f5af6f270efe9d5653815c905af46
This commit is contained in:
parent
94006b8a3a
commit
3ecd29b57b
@ -22,6 +22,7 @@ TRACE_EVENT(damon_aggregated,
|
||||
__field(unsigned long, start)
|
||||
__field(unsigned long, end)
|
||||
__field(unsigned int, nr_accesses)
|
||||
__field(unsigned int, age)
|
||||
),
|
||||
|
||||
TP_fast_assign(
|
||||
@ -30,11 +31,13 @@ TRACE_EVENT(damon_aggregated,
|
||||
__entry->start = r->ar.start;
|
||||
__entry->end = r->ar.end;
|
||||
__entry->nr_accesses = r->nr_accesses;
|
||||
__entry->age = r->age;
|
||||
),
|
||||
|
||||
TP_printk("target_id=%lu nr_regions=%u %lu-%lu: %u",
|
||||
TP_printk("target_id=%lu nr_regions=%u %lu-%lu: %u %u",
|
||||
__entry->target_id, __entry->nr_regions,
|
||||
__entry->start, __entry->end, __entry->nr_accesses)
|
||||
__entry->start, __entry->end,
|
||||
__entry->nr_accesses, __entry->age)
|
||||
);
|
||||
|
||||
#endif /* _TRACE_DAMON_H */
|
||||
|
Loading…
Reference in New Issue
Block a user