ANDROID: sched: Add replace_next_task_fair vendor hook in pick_next_task_fair
Add trace_android_rvh_replace_next_task_fair vendor hook in scheduler to support OEM's need to override the selected task from pick_next_task_fair() due to situations where important tasks are not picked in time. Bug: 374011864 Bug: 413566818 Change-Id: I55a0e7e794be77ba32c8adbff7b7eb2d914e4c52 Signed-off-by: Wanwei Jiang <wanwei.jiang@amlogic.com> [jstultz: reworded commit message] Signed-off-by: John Stultz <jstultz@google.com>
This commit is contained in:
1 parent
7675933742
commit
3d5bad71a7
3 files changed
+7
No files matched your search
@@ -76,6 +76,10 @@ DECLARE_RESTRICTED_HOOK(android_rvh_setscheduler,
|
||||
TP_PROTO(struct task_struct *p),
|
||||
TP_ARGS(p), 1);
|
||||
|
||||
DECLARE_RESTRICTED_HOOK(android_rvh_replace_next_task_fair,
|
||||
TP_PROTO(struct rq *rq, struct task_struct **p, struct task_struct *prev),
|
||||
TP_ARGS(rq, p, prev), 1);
|
||||
|
||||
struct sched_group;
|
||||
DECLARE_RESTRICTED_HOOK(android_rvh_sched_balance_find_src_group,
|
||||
TP_PROTO(struct sched_group *busiest, struct rq *dst_rq, int *out_balance),
|
||||
|
||||
@@ -8953,6 +8953,8 @@ pick_next_task_fair(struct rq *rq, struct task_struct *prev, struct rq_flags *rf
|
||||
|
||||
again:
|
||||
p = pick_task_fair(rq);
|
||||
trace_android_rvh_replace_next_task_fair(rq, &p, prev);
|
||||
|
||||
if (!p)
|
||||
goto idle;
|
||||
se = &p->se;
|
||||
|
||||
@@ -37,6 +37,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cpu_overutilized);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_setaffinity);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_build_sched_domains);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_check_preempt_tick);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_replace_next_task_fair);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_balance_rt);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_check_preempt_wakeup_fair);
|
||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_cpus_allowed_by_task);
|
||||
|
||||
Reference in new issue
Block a user