Wengang Wang wrote: > following patches add trace event support for ocfs2. > for tracepoint, see Documentation/trace/tracepoints.txt > for trace events, see Documentation/trace/events.txt > > the first patch add file include/trace/events/ocfs2.h to kernel tree. it is > used > to store trace declarations. it's contents are self-explained. > NOTE that each ocfs2 header file should be above "#include > <linux/tracepoint.h>" > > the second one is an example which adds trace event to ocfs2_file_aio_read(). > NOTE that CREATE_TRACE_POINTS must be defined before including > trace/event/ocfs2.h > when trace event is used.
and CREATE_TRACE_POINTS should be defined in only one .c file please. regards, wengang. > > enable/disable the trace event: > 1) debugfs is need to be mount for using trace event. > mount -t debugfs debugfs /sys/kernel/debug(or somewhere else) > 2) enable/disable some specific event, > echo > '1'/'0'>/sys/kernel/debug/tracing/events/ocfs2/ocfs2_file_aio_read/enable > 3) to see the trace log, > cat /sys/kernel/debug/tracing/trace > > an output example is: > [r...@cool ocfs2_file_aio_read]# cat /sys/kernel/debug/tracing/trace > # tracer: nop > # > # TASK-PID CPU# TIMESTAMP FUNCTION > # | | | | | > cat-2587 [001] 708.929889: ocfs2_file_aio_read: 0xf544bed8 > 0xf544bf5c 1 0 > > cat-2587 [000] 708.944128: ocfs2_file_aio_read: 0xf544bed8 > 0xf544bf5c 1 43 > > examples of using filter. > 1) if pid is 0, do the trace: > echo "common_pid == 0" > >/sys/kernel/debug/tracing/events/ocfs2/ocfs2_file_aio_read/filter > 2) if group id not 0, do the trace: > echo "common_tgid != 0" >filter > > for filter expression, so far, see > http://article.gmane.org/gmane.linux.kernel/887690? > > _______________________________________________ Ocfs2-devel mailing list [email protected] http://oss.oracle.com/mailman/listinfo/ocfs2-devel
