blob: f84c249418b68fa7032b6323e7b158c01e7603b3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#! /usr/bin/env stap
# scf.stp
# A reimplementation of user script:smp_call_function example given at OLS 2005
# in the current language.
global traces
probe begin { print("Starting probe, type control-c to stop.\n") }
probe kernel.function("smp_call_function")
{
traces[pid(), pexecname(), backtrace()] ++
}
probe end {
foreach ([pid, name, stack] in traces-) { # sort by frequency encountered
printf ("traces[%d,%s,\n", pid, name)
print_stack (stack)
printf ("] = %d\n", traces[pid, name, stack]);
}
}
|