mirror of
https://github.com/torvalds/linux.git
synced 2026-06-07 22:14:04 +02:00
ANDROID: vendor_hooks: Add hook for binder
Add hook to support oem's performance feature. Bug: 186482511 Signed-off-by: xieliujie <xieliujie@oppo.com> Change-Id: Ib495e80e569cc293eaa98d87a050aee8915eb415
This commit is contained in:
parent
cf881c74d3
commit
2337b9185a
|
|
@ -729,6 +729,7 @@ static void binder_transaction_priority(struct task_struct *task,
|
||||||
bool inherit_rt)
|
bool inherit_rt)
|
||||||
{
|
{
|
||||||
struct binder_priority desired_prio = t->priority;
|
struct binder_priority desired_prio = t->priority;
|
||||||
|
bool skip = false;
|
||||||
|
|
||||||
if (t->set_priority_called)
|
if (t->set_priority_called)
|
||||||
return;
|
return;
|
||||||
|
|
@ -737,6 +738,10 @@ static void binder_transaction_priority(struct task_struct *task,
|
||||||
t->saved_priority.sched_policy = task->policy;
|
t->saved_priority.sched_policy = task->policy;
|
||||||
t->saved_priority.prio = task->normal_prio;
|
t->saved_priority.prio = task->normal_prio;
|
||||||
|
|
||||||
|
trace_android_vh_binder_transaction_priority_skip(task, &skip);
|
||||||
|
if (skip)
|
||||||
|
return;
|
||||||
|
|
||||||
if (!inherit_rt && is_rt_policy(desired_prio.sched_policy)) {
|
if (!inherit_rt && is_rt_policy(desired_prio.sched_policy)) {
|
||||||
desired_prio.prio = NICE_TO_PRIO(0);
|
desired_prio.prio = NICE_TO_PRIO(0);
|
||||||
desired_prio.sched_policy = SCHED_NORMAL;
|
desired_prio.sched_policy = SCHED_NORMAL;
|
||||||
|
|
|
||||||
|
|
@ -75,6 +75,7 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_setscheduler);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_arch_set_freq_scale);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_arch_set_freq_scale);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_is_fpsimd_save);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_is_fpsimd_save);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_transaction_init);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_transaction_init);
|
||||||
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_transaction_priority_skip);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_set_priority);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_set_priority);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_restore_priority);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_restore_priority);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_wakeup_ilocked);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_wakeup_ilocked);
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,9 @@ struct binder_transaction_data;
|
||||||
DECLARE_HOOK(android_vh_binder_transaction_init,
|
DECLARE_HOOK(android_vh_binder_transaction_init,
|
||||||
TP_PROTO(struct binder_transaction *t),
|
TP_PROTO(struct binder_transaction *t),
|
||||||
TP_ARGS(t));
|
TP_ARGS(t));
|
||||||
|
DECLARE_HOOK(android_vh_binder_transaction_priority_skip,
|
||||||
|
TP_PROTO(struct task_struct *task, bool *skip),
|
||||||
|
TP_ARGS(task, skip));
|
||||||
DECLARE_HOOK(android_vh_binder_set_priority,
|
DECLARE_HOOK(android_vh_binder_set_priority,
|
||||||
TP_PROTO(struct binder_transaction *t, struct task_struct *task),
|
TP_PROTO(struct binder_transaction *t, struct task_struct *task),
|
||||||
TP_ARGS(t, task));
|
TP_ARGS(t, task));
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user