ANDROID: vendor_hooks: Add hooks to record the time of the process in various states

These hooks will do the following works:
a) record the time of the process in various states
b) Make corresponding optimization strategies in different hooks

Bug: 205938967

Signed-off-by: Liujie Xie <xieliujie@oppo.com>
Change-Id: Ia3c47bbf0aadd17337ce18fd910343b1b8c3ef93
(cherry picked from commit a61d61bab7)
Signed-off-by: Carlos Llamas <cmllamas@google.com>
(cherry picked from commit b7a1174cc5dfc68cf769547b91958df407e55981)
(cherry picked from commit e1f430a487)
This commit is contained in:
Liujie Xie
2021-11-11 22:15:49 +08:00
committed by Treehugger Robot
parent bf8bbc3ff8
commit 310995a546
4 changed files with 9 additions and 0 deletions

View File

@@ -296,6 +296,10 @@ DECLARE_RESTRICTED_HOOK(android_rvh_dequeue_task_fair,
TP_PROTO(struct rq *rq, struct task_struct *p, int flags),
TP_ARGS(rq, p, flags), 1);
DECLARE_HOOK(android_vh_sched_stat_runtime_rt,
TP_PROTO(struct task_struct *tsk, u64 delta),
TP_ARGS(tsk, delta));
DECLARE_RESTRICTED_HOOK(android_rvh_util_est_update,
TP_PROTO(struct cfs_rq *cfs_rq, struct task_struct *p, bool task_sleep, int *ret),
TP_ARGS(cfs_rq, p, task_sleep, ret), 1);

View File

@@ -58,6 +58,8 @@
#include <trace/hooks/sched.h>
EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_runtime);
/*
* Targeted preemption latency for CPU-bound tasks:
*

View File

@@ -1073,6 +1073,8 @@ static void update_curr_rt(struct rq *rq)
update_current_exec_runtime(curr, now, delta_exec);
trace_android_vh_sched_stat_runtime_rt(curr, delta_exec);
if (!rt_bandwidth_enabled())
return;

View File

@@ -81,6 +81,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_schedule_bug);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_exec);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_update_topology_flags_workfn);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_update_thermal_stats);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sched_stat_runtime_rt);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_do_wake_up_sync);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_wake_flags);
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_find_new_ilb);