blob: 4d6141792872a41cf0c99246b6794a58d9de9488 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#! /bin/sh
(
echo 'probe begin {}'
smap=/boot/System.map-`uname -r`
if [ -f $smap ]
then
# v-- exclude modules
grep __systemtap_mark $smap | fgrep -v '[' | while read addr section symbol
do
mark=`expr $symbol : '__systemtap_mark_\([a-zA-Z0-9_]\+\)_[NS]*\.[0-9]\+'`
sig=`expr $symbol : '__systemtap_mark_[a-zA-Z0-9_]\+_\([NS]*\)\.[0-9]\+'`
siglen=`expr length "$sig"`
# echo $mark $sig $siglen
echo 'probe kernel.mark("'$mark'") {'
i=0
while [ $i -lt $siglen ]; do
i=`expr $i + 1`
echo ' print ($arg'$i')'
done
echo '}'
done
fi
) | stap -p4 -
|