Blame view

drivers/android/vendor_hooks.c 6.56 KB
7f6274011   Todd Kjos   ANDROID: add supp...
1
2
3
4
5
  // SPDX-License-Identifier: GPL-2.0-only
  /* vendor_hook.c
   *
   * Android Vendor Hook Support
   *
dc419bab7   Todd Kjos   ANDROID: fix copy...
6
   * Copyright 2020 Google LLC
7f6274011   Todd Kjos   ANDROID: add supp...
7
8
9
10
   */
  
  #define CREATE_TRACE_POINTS
  #include <trace/hooks/vendor_hooks.h>
a1fc1fba4   Yun Hsiang   ANDROID: sched: a...
11
  #include <trace/hooks/sched.h>
74555f399   Wooyeon Kim   ANDROID: vendor_h...
12
  #include <trace/hooks/fpsimd.h>
3fc5e9425   JianMin Liu   ANDROID: binder: ...
13
  #include <trace/hooks/binder.h>
df18d99da   JianMin Liu   ANDROID: rwsem: A...
14
  #include <trace/hooks/rwsem.h>
3ba4b6d6a   JianMin Liu   ANDROID: futex: A...
15
  #include <trace/hooks/futex.h>
9ad8ff902   Sangmoon Kim   ANDROID: vendor_h...
16
  #include <trace/hooks/dtask.h>
322f59e74   Park Bumgyu   ANDROID: vendor_h...
17
  #include <trace/hooks/cpuidle.h>
e209b3b88   Yun Hsiang   ANDROID: sched: a...
18
  #include <trace/hooks/topology.h>
1aa1f6a7c   C-J.Chen   ANDROID: mpam: ad...
19
  #include <trace/hooks/mpam.h>
0df7b9549   Elliot Berman   ANDROID: gic: Add...
20
  #include <trace/hooks/gic.h>
34f087452   Sangmoon Kim   ANDROID: workqueu...
21
  #include <trace/hooks/wqlockup.h>
56da24e7a   Changki Kim   ANDROID: vendor_h...
22
  #include <trace/hooks/debug.h>
0d8928ed6   Sangmoon Kim   ANDROID: sysrq: a...
23
  #include <trace/hooks/sysrqcrash.h>
7aaa29b82   Prasad Sodagudi   ANDROID: printk: ...
24
  #include <trace/hooks/printk.h>
00c6f53e0   Neeraj Upadhyay   ANDROID: gic-v3: ...
25
  #include <trace/hooks/gic_v3.h>
76b58ff07   Murali Nalajala   ANDROID: sched_cl...
26
  #include <trace/hooks/epoch.h>
efab33406   Todd Kjos   ANDROID: add vend...
27
  #include <trace/hooks/cpufreq.h>
62e32cf8f   Chris Goldsworthy   ANDROID: mm: Crea...
28
  #include <trace/hooks/mm.h>
2e14f01dc   Pavankumar Kondeti   ANDROID: tracing:...
29
  #include <trace/hooks/preemptirq.h>
084fab46d   Prateek Sood   ANDROID: ftrace: ...
30
  #include <trace/hooks/ftrace_dump.h>
35e4214e9   Lina Iyer   ANDROID: PM / Dom...
31
  #include <trace/hooks/pm_domain.h>
7f6274011   Todd Kjos   ANDROID: add supp...
32
33
34
35
36
  
  /*
   * Export tracepoints that act as a bare tracehook (ie: have no trace event
   * associated with them) to allow external modules to probe them.
   */
a1fc1fba4   Yun Hsiang   ANDROID: sched: a...
37
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_select_task_rq_fair);
16330b356   Park Bumgyu   ANDROID: Add vend...
38
39
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_select_task_rq_rt);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_select_fallback_rq);
2935d588b   JianMin Liu   ANDROID: sched: U...
40
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_scheduler_tick);
16330b356   Park Bumgyu   ANDROID: Add vend...
41
42
43
44
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_enqueue_task);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_dequeue_task);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_can_migrate_task);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_find_lowest_rq);
f39f3ac20   JianMin Liu   ANDROID: sched: a...
45
46
47
48
49
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_rtmutex_prepare_setprio);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_prepare_prio_fork);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_finish_prio_fork);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_user_nice);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_setscheduler);
e209b3b88   Yun Hsiang   ANDROID: sched: a...
50
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_arch_set_freq_scale);
74555f399   Wooyeon Kim   ANDROID: vendor_h...
51
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_is_fpsimd_save);
3fc5e9425   JianMin Liu   ANDROID: binder: ...
52
53
54
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_transaction_init);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_set_priority);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_restore_priority);
90bd50a4d   Satya Durga Srinivasu Prabhala   ANDROID: binder: ...
55
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_binder_wakeup_ilocked);
df18d99da   JianMin Liu   ANDROID: rwsem: A...
56
57
58
59
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_init);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_wake);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_write_finished);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alter_rwsem_list_add);
3ba4b6d6a   JianMin Liu   ANDROID: futex: A...
60
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_alter_futex_plist_add);
9ad8ff902   Sangmoon Kim   ANDROID: vendor_h...
61
62
63
64
65
66
67
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_wait_start);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mutex_wait_finish);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_read_wait_start);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_read_wait_finish);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_write_wait_start);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_rwsem_write_wait_finish);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sched_show_task);
4eae6d194   Park Bumgyu   ANDROID: vendor_h...
68
69
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpu_idle_enter);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cpu_idle_exit);
1aa1f6a7c   C-J.Chen   ANDROID: mpam: ad...
70
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mpam_set);
a2ca8408d   YT Chang   ANDROID: sched: a...
71
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_find_busiest_group);
0df7b9549   Elliot Berman   ANDROID: gic: Add...
72
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_resume);
34f087452   Sangmoon Kim   ANDROID: workqueu...
73
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_wq_lockup_pool);
56da24e7a   Changki Kim   ANDROID: vendor_h...
74
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ipi_stop);
0d8928ed6   Sangmoon Kim   ANDROID: sysrq: a...
75
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sysrq_crash);
bf3d991a7   Sai Harshini Nimmala   ANDROID: sched: A...
76
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_dump_throttled_rt_tasks);
7aaa29b82   Prasad Sodagudi   ANDROID: printk: ...
77
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_printk_hotplug);
9bdaa3fa8   Amir Vajid   ANDROID: vendor_h...
78
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_jiffies_update);
00c6f53e0   Neeraj Upadhyay   ANDROID: gic-v3: ...
79
80
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_v3_set_affinity);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_gic_v3_affinity_init);
76b58ff07   Murali Nalajala   ANDROID: sched_cl...
81
82
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_suspend_epoch_val);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_resume_epoch_val);
efab33406   Todd Kjos   ANDROID: add vend...
83
84
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_show_max_freq);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_freq_table_limits);
878495dac   Pavankumar Kondeti   ANDROID: sched: A...
85
86
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_newidle_balance);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_nohz_balancer_kick);
e0db4801b   Park Bumgyu   ANDROID: sched: a...
87
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_rebalance_domains);
878495dac   Pavankumar Kondeti   ANDROID: sched: A...
88
89
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_find_busiest_queue);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_migrate_queued_task);
782131fed   Stephen Dickey   ANDROID: cpu/hotp...
90
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_resume_cpus);
147a9b3d9   Rick Yiu   ANDROID: sched: A...
91
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_find_energy_efficient_cpu);
06881e01b   Wei Wang   ANDROID: sched: A...
92
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_set_sugov_sched_attr);
846bf8e8c   Wei Wang   ANDROID: sched: A...
93
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_iowait);
f34f38632   Satya Durga Srinivasu Prabhala   ANDROID: sched/co...
94
95
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_sugov_update);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_setaffinity);
4d1ac6a16   Satya Durga Srinivasu Prabhala   ANDROID: sched/cp...
96
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_update_cpus_allowed);
62e32cf8f   Chris Goldsworthy   ANDROID: mm: Crea...
97
98
99
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_skip_swapcache_flags);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_gfp_zone_flags);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_readahead_gfp_mask);
2e14f01dc   Pavankumar Kondeti   ANDROID: tracing:...
100
101
102
103
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_preempt_disable);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_preempt_enable);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_irqs_disable);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_irqs_enable);
292f43081   Shaleen Agrawal   ANDROID: Sched: A...
104
105
106
107
108
109
110
111
112
113
114
115
116
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_set_task_cpu);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_try_to_wake_up);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_try_to_wake_up_success);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_fork);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_wake_up_new_task);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_new_task_stats);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_flush_task);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_tick_entry);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_schedule);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_cpu_starting);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_cpu_dying);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_account_irq);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_place_entity);
598670e2d   Satya Durga Srinivasu Prabhala   ANDROID: sched: a...
117
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_build_perf_domains);
292f43081   Shaleen Agrawal   ANDROID: Sched: A...
118
119
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_update_cpu_capacity);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_update_misfit_status);
5fed80f58   Abhijeet Dharmapurikar   ANDROID: sched: A...
120
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cpu_cgroup_attach);
d3092d8af   Choonghoon Park   ANDROID: sched: A...
121
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_cpu_cgroup_can_attach);
1feedbd76   Shaleen Agrawal   ANDROID: Sched: A...
122
123
124
125
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_fork_init);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_ttwu_cond);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_schedule_bug);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_rvh_sched_exec);
084fab46d   Prateek Sood   ANDROID: ftrace: ...
126
127
128
129
130
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_oops_enter);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_oops_exit);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_size_check);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_format_check);
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_ftrace_dump_buffer);
35e4214e9   Lina Iyer   ANDROID: PM / Dom...
131
  EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_allow_domain_state);