diff options
author | Patrick Bellasi <patrick.bellasi@arm.com> | 2015-06-22 13:50:01 +0100 |
---|---|---|
committer | Vincent Guittot <vincent.guittot@linaro.org> | 2015-08-10 17:57:09 +0200 |
commit | e43fbd19849c91f2ef5dac5d0680db68cd8ca2dd (patch) | |
tree | 4062c1b7bb3b9929bfdcf2f17d42deebaf1656bd | |
parent | 1f2e63b897d578e5841929a2958e2270151052d9 (diff) |
DEBUG: schedtune: add tracepoint for task boost signal
Change-Id: I026267388453754629e6323cb0e7bb14b4fe4598
Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
-rw-r--r-- | include/trace/events/sched.h | 29 | ||||
-rw-r--r-- | kernel/sched/fair.c | 2 |
2 files changed, 31 insertions, 0 deletions
diff --git a/include/trace/events/sched.h b/include/trace/events/sched.h index acaf7ffc6e3b..a08174641123 100644 --- a/include/trace/events/sched.h +++ b/include/trace/events/sched.h @@ -677,6 +677,35 @@ TRACE_EVENT(sched_tune_config, __entry->pc_nrg_gain, __entry->pc_cap_gain) ); +/* + * Tracepoint for accounting task boosted utilization + */ +TRACE_EVENT(sched_boost_task, + + TP_PROTO(struct task_struct *tsk, unsigned long utilization, unsigned long margin), + + TP_ARGS(tsk, utilization, margin), + + TP_STRUCT__entry( + __array( char, comm, TASK_COMM_LEN ) + __field( pid_t, pid ) + __field( unsigned long, utilization ) + __field( unsigned long, margin ) + ), + + TP_fast_assign( + memcpy(__entry->comm, tsk->comm, TASK_COMM_LEN); + __entry->pid = tsk->pid; + __entry->utilization = utilization; + __entry->margin = margin; + ), + + TP_printk("comm=%s pid=%d utilization=%lu margin=%lu", + __entry->comm, __entry->pid, + __entry->utilization, + __entry->margin) +); + #endif /* _TRACE_SCHED_H */ /* This part must be outside protection */ diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 31198fbf841a..2b44124b6ff5 100644 --- a/kernel/sched/fair.c +++ b/kernel/sched/fair.c @@ -5410,6 +5410,8 @@ boosted_task_utilization(struct task_struct *task) if (!task_rq(task)->rd->overutilized) margin = schedtune_task_margin(task); + trace_sched_boost_task(task, utilization, margin); + utilization += margin; return utilization; |