This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Missing tracepoints in systemtap? stap -L 'kernel.trace("*")' vs cat /sys/kernel/debug/tracing/available_events


I am taking a look at the new tracepoints that are available in the RHEL5 kernels. I was trying to run similar scripts on a 2.6.33-rc6. In particular I was looking at some of the timer_* tracepoints.

They show up on the upcoming RHEL 5 kernel:

$ stap -L 'kernel.trace("*")'|grep timer
kernel.trace("block_unplug_timer") $q:struct request_queue*
kernel.trace("itimer_expire") $now:cputime_t $sig:struct signal_struct* $which:int
kernel.trace("itimer_state") $expires:cputime_t $value:struct itimerval* $which:int
kernel.trace("timer_cancel") $timer:struct timer_list*
kernel.trace("timer_expire_entry") $timer:struct timer_list*
kernel.trace("timer_expire_exit") $timer:struct timer_list*
kernel.trace("timer_init") $timer:struct timer_list*
kernel.trace("timer_start") $expires:long unsigned int $timer:struct timer_list*

However, on the 2.6.33-rc6kernel they do not show up:

$ stap -L 'kernel.trace("*")'|grep timer
kernel.trace("block_unplug_timer") $q:struct request_queue*

This made me wonder what other differences there are between the available events 2.6.33-rc* and systemtap kernel.trace("*"). I did the following to generate the list of available tracepoints for systemtap and trace events.

# mount -t debugfs /sys/kernel/debug debugfs
$ cat /sys/kernel/debug/tracing/available_events |\
 awk   -F : '{print $2}' |sort > /tmp/tracing_events.txt
$ stap -L 'kernel.tracing("*")' |\
 awk   -F \" '{print $2}'|\
 sort > /tmp/systemtap_tracing_events.txt
$ diff -u /tmp/systemtap_tracing_events.txt \
/tmp/tracing_events.txt > /tmp/missing_tracepoints.txt

Attached is the list of missing tracepoints differences.

There are a couple events that show up for systemtap but not for /sys/kernel/debug/tracing/available_events:

-kvm_mmio
-napi_poll

Most of the missing events are sys_* and there are some i915_* events only in the available_events. However, I am surprised that the hrtimer_*, itimer_*, and timer_ events from the kernel's include/trace/events didn't show up for systemtap.

-Will

Attachment: missing_tracepoints.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]