18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */
28c2ecf20Sopenharmony_ci#ifdef CONFIG_SCHED_RT_CAS
38c2ecf20Sopenharmony_ciTRACE_EVENT(sched_find_cas_cpu_each,
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci	TP_PROTO(struct task_struct *task, int cpu, int target_cpu,
68c2ecf20Sopenharmony_ci		 int isolated, int idle, unsigned long task_util,
78c2ecf20Sopenharmony_ci		 unsigned long cpu_util, int cpu_cap),
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci	TP_ARGS(task, cpu, target_cpu, isolated, idle, task_util, cpu_util, cpu_cap),
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci	TP_STRUCT__entry(
128c2ecf20Sopenharmony_ci		__array(char, comm, TASK_COMM_LEN)
138c2ecf20Sopenharmony_ci		__field(pid_t, pid)
148c2ecf20Sopenharmony_ci		__field(int, prio)
158c2ecf20Sopenharmony_ci		__field(int, cpu)
168c2ecf20Sopenharmony_ci		__field(int, target_cpu)
178c2ecf20Sopenharmony_ci		__field(int, isolated)
188c2ecf20Sopenharmony_ci		__field(unsigned long, idle)
198c2ecf20Sopenharmony_ci		__field(unsigned long, task_util)
208c2ecf20Sopenharmony_ci		__field(unsigned long, cpu_util)
218c2ecf20Sopenharmony_ci		__field(unsigned long, cpu_cap)
228c2ecf20Sopenharmony_ci	),
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci	TP_fast_assign(
258c2ecf20Sopenharmony_ci		memcpy(__entry->comm, task->comm, TASK_COMM_LEN);
268c2ecf20Sopenharmony_ci		__entry->pid		= task->pid;
278c2ecf20Sopenharmony_ci		__entry->prio		= task->prio;
288c2ecf20Sopenharmony_ci		__entry->cpu		= cpu;
298c2ecf20Sopenharmony_ci		__entry->target_cpu	= target_cpu;
308c2ecf20Sopenharmony_ci		__entry->isolated	= isolated;
318c2ecf20Sopenharmony_ci		__entry->idle		= idle;
328c2ecf20Sopenharmony_ci		__entry->task_util	= task_util;
338c2ecf20Sopenharmony_ci		__entry->cpu_util	= cpu_util;
348c2ecf20Sopenharmony_ci		__entry->cpu_cap	= cpu_cap;
358c2ecf20Sopenharmony_ci	),
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci	TP_printk("comm=%s pid=%d prio=%d cpu=%d target_cpu=%d isolated=%d idle=%lu task_util=%lu cpu_util=%lu cpu_cap=%lu",
388c2ecf20Sopenharmony_ci		  __entry->comm, __entry->pid, __entry->prio,
398c2ecf20Sopenharmony_ci		  __entry->cpu, __entry->target_cpu, __entry->isolated,
408c2ecf20Sopenharmony_ci		  __entry->idle, __entry->task_util,
418c2ecf20Sopenharmony_ci		  __entry->cpu_util, __entry->cpu_cap)
428c2ecf20Sopenharmony_ci);
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_ciTRACE_EVENT(sched_find_cas_cpu,
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci	TP_PROTO(struct task_struct *task, struct cpumask *lowest_mask,
478c2ecf20Sopenharmony_ci		 unsigned long tutil,  int prev_cpu, int target_cpu),
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci	TP_ARGS(task, lowest_mask, tutil, prev_cpu, target_cpu),
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci	TP_STRUCT__entry(
528c2ecf20Sopenharmony_ci		__array(char, comm, TASK_COMM_LEN)
538c2ecf20Sopenharmony_ci		__field(pid_t, pid)
548c2ecf20Sopenharmony_ci		__field(unsigned int, prio)
558c2ecf20Sopenharmony_ci		__bitmask(lowest, num_possible_cpus())
568c2ecf20Sopenharmony_ci		__field(unsigned long, tutil)
578c2ecf20Sopenharmony_ci		__field(int, prev_cpu)
588c2ecf20Sopenharmony_ci		__field(int, target_cpu)
598c2ecf20Sopenharmony_ci	),
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ci	TP_fast_assign(
628c2ecf20Sopenharmony_ci		memcpy(__entry->comm, task->comm, TASK_COMM_LEN);
638c2ecf20Sopenharmony_ci		__entry->pid		= task->pid;
648c2ecf20Sopenharmony_ci		__entry->prio		= task->prio;
658c2ecf20Sopenharmony_ci		__assign_bitmask(lowest, cpumask_bits(lowest_mask), num_possible_cpus());
668c2ecf20Sopenharmony_ci		__entry->tutil		= tutil;
678c2ecf20Sopenharmony_ci		__entry->prev_cpu	= prev_cpu;
688c2ecf20Sopenharmony_ci		__entry->target_cpu	= target_cpu;
698c2ecf20Sopenharmony_ci	),
708c2ecf20Sopenharmony_ci
718c2ecf20Sopenharmony_ci	TP_printk("comm=%s pid=%d prio=%d lowest_mask=%s tutil=%lu prev=%d target=%d ",
728c2ecf20Sopenharmony_ci		  __entry->comm, __entry->pid, __entry->prio,
738c2ecf20Sopenharmony_ci		  __get_bitmask(lowest), __entry->tutil,
748c2ecf20Sopenharmony_ci		  __entry->prev_cpu, __entry->target_cpu)
758c2ecf20Sopenharmony_ci);
768c2ecf20Sopenharmony_ci#endif /* CONFIG_SCHED_RT_CAS */
77