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