#! stap -p4 //Tests if all probes in the scheduler tapset are resolvable. probe scheduler.kthread_stop { printf("pid = %d, priority = %d\n", thread_pid, thread_priority); } probe scheduler.kthread_stop.return { printf("return value = %d\n", return_value); } probe scheduler.wait_task { printf("pid = %d, priority = %d\n", task_pid, task_priority); } probe scheduler.wakeup { printf("pid = %d, priority = %d\n, state = %d, cpu = %d, tid = %d\n",task_pid, task_priority, task_state, task_cpu, task_tid); } probe scheduler.wakeup_new { printf("pid = %d, priority = %d, state = %d, cpu = %d, tid = %d\n", task_pid, task_priority, task_state, task_cpu, task_tid); } probe scheduler.ctxswitch { printf("prev_pid = %d, prev_priority = %d, prev_state = %d, prev_task_name = %s, prev_tid = %d, next_pid = %d, next_priority = %d, next_state = %d, next_task_name = %s, next_tid = %d\n", prev_pid, prev_priority, prevtsk_state, prev_task_name, prev_tid, next_pid, next_priority, nexttsk_state, next_task_name, next_tid); } probe scheduler.migrate { printf("pid = %d, priority = %d, original cpu = %d destination cpu = %d\n", pid, priority, cpu_from, cpu_to); } probe scheduler.process_free { printf("pid = %d, priority = %d\n", pid, priority); } probe scheduler.process_exit { printf("pid = %d, priority = %d\n", pid, priority); } probe scheduler.process_wait { printf("pid = %d\n", pid); } probe scheduler.process_fork { printf("parent pid = %d, child pid = %d\n", parent_pid, child_pid); } probe scheduler.signal_send { printf("pid = %d, signal = %d\n", pid, signal_number); }