diff options
author | Kiran Prakesh <kiran@linux.vnet.ibm.com> | 2009-10-01 22:39:32 +0530 |
---|---|---|
committer | Josh Stone <jistone@redhat.com> | 2009-10-02 16:29:56 -0700 |
commit | ae3072f460693e85962556bf0529a729c7d97bf6 (patch) | |
tree | aab6a3db669060012aea4a5c6bdabe597eac6c74 /testsuite/buildok | |
parent | a8f5a3bf344f9b014c5adf8b5eada10d09f31219 (diff) | |
download | systemtap-steved-ae3072f460693e85962556bf0529a729c7d97bf6.tar.gz systemtap-steved-ae3072f460693e85962556bf0529a729c7d97bf6.tar.xz systemtap-steved-ae3072f460693e85962556bf0529a729c7d97bf6.zip |
Scheduler Tapset based on kernel tracepoints
This patch adds kernel tracepoints based probes to the scheduler tapset
along with the testcase, scheduler-test-tracepoints.stp and an example
script, sched_switch.stp.
Signed-off-by: Kiran Prakash <kiran@linux.vnet.ibm.com>
Signed-off-by: Josh Stone <jistone@redhat.com>
Diffstat (limited to 'testsuite/buildok')
-rw-r--r-- | testsuite/buildok/scheduler-test-tracepoints.stp | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/testsuite/buildok/scheduler-test-tracepoints.stp b/testsuite/buildok/scheduler-test-tracepoints.stp new file mode 100644 index 00000000..a660c367 --- /dev/null +++ b/testsuite/buildok/scheduler-test-tracepoints.stp @@ -0,0 +1,51 @@ +#! stap -up4 + +//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); +} |