1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifdef CONFIG_SCHED_RT_CAS 3 TRACE_EVENT(sched_find_cas_cpu_each, 4 5 TP_PROTO(struct task_struct *task, int cpu, int target_cpu, 6 int isolated, int idle, unsigned long task_util, 7 unsigned long cpu_util, int cpu_cap), 8 9 TP_ARGS(task, cpu, target_cpu, isolated, idle, task_util, cpu_util, cpu_cap), 10 11 TP_STRUCT__entry( 12 __array(char, comm, TASK_COMM_LEN) 13 __field(pid_t, pid) 14 __field(int, prio) 15 __field(int, cpu) 16 __field(int, target_cpu) 17 __field(int, isolated) 18 __field(unsigned long, idle) 19 __field(unsigned long, task_util) 20 __field(unsigned long, cpu_util) 21 __field(unsigned long, cpu_cap) 22 ), 23 24 TP_fast_assign( 25 memcpy(__entry->comm, task->comm, TASK_COMM_LEN); 26 __entry->pid = task->pid; 27 __entry->prio = task->prio; 28 __entry->cpu = cpu; 29 __entry->target_cpu = target_cpu; 30 __entry->isolated = isolated; 31 __entry->idle = idle; 32 __entry->task_util = task_util; 33 __entry->cpu_util = cpu_util; 34 __entry->cpu_cap = cpu_cap; 35 ), 36 37 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", 38 __entry->comm, __entry->pid, __entry->prio, 39 __entry->cpu, __entry->target_cpu, __entry->isolated, 40 __entry->idle, __entry->task_util, 41 __entry->cpu_util, __entry->cpu_cap) 42 ); 43 44 TRACE_EVENT(sched_find_cas_cpu, 45 46 TP_PROTO(struct task_struct *task, struct cpumask *lowest_mask, 47 unsigned long tutil, int prev_cpu, int target_cpu), 48 49 TP_ARGS(task, lowest_mask, tutil, prev_cpu, target_cpu), 50 51 TP_STRUCT__entry( 52 __array(char, comm, TASK_COMM_LEN) 53 __field(pid_t, pid) 54 __field(unsigned int, prio) 55 __bitmask(lowest, num_possible_cpus()) 56 __field(unsigned long, tutil) 57 __field(int, prev_cpu) 58 __field(int, target_cpu) 59 ), 60 61 TP_fast_assign( 62 memcpy(__entry->comm, task->comm, TASK_COMM_LEN); 63 __entry->pid = task->pid; 64 __entry->prio = task->prio; 65 __assign_bitmask(lowest, cpumask_bits(lowest_mask), num_possible_cpus()); 66 __entry->tutil = tutil; 67 __entry->prev_cpu = prev_cpu; 68 __entry->target_cpu = target_cpu; 69 ), 70 71 TP_printk("comm=%s pid=%d prio=%d lowest_mask=%s tutil=%lu prev=%d target=%d ", 72 __entry->comm, __entry->pid, __entry->prio, 73 __get_bitmask(lowest), __entry->tutil, 74 __entry->prev_cpu, __entry->target_cpu) 75 ); 76 #endif /* CONFIG_SCHED_RT_CAS */ 77