On Fri, 3 May 2019 12:11:18 +0300 Tzvetomir Stoyanov <tstoyanov@xxxxxxxxxx> wrote: > --- /dev/null > +++ b/tools/lib/traceevent/Documentation/libtraceevent-record_parse.txt > @@ -0,0 +1,137 @@ > +libtraceevent(3) > +================ > + > +NAME > +---- > +tep_data_type, tep_data_pid,tep_data_preempt_count, tep_data_flags - > +Extract common fields from a record. > + > +SYNOPSIS > +-------- > +[verse] > +-- > +*#include <event-parse.h>* > + > +enum *trace_flag_type* { > + _TRACE_FLAG_IRQS_OFF_, > + _TRACE_FLAG_IRQS_NOSUPPORT_, Changed here OK. > + _TRACE_FLAG_NEED_RESCHED_, > + _TRACE_FLAG_HARDIRQ_, > + _TRACE_FLAG_SOFTIRQ_, > +}; > + > +int *tep_data_type*(struct tep_handle pass:[*]_tep_, struct tep_record pass:[*]_rec_); > +int *tep_data_pid*(struct tep_handle pass:[*]_tep_, struct tep_record pass:[*]_rec_); > +int *tep_data_preempt_count*(struct tep_handle pass:[*]_tep_, struct tep_record pass:[*]_rec_); > +int *tep_data_flags*(struct tep_handle pass:[*]_tep_, struct tep_record pass:[*]_rec_); > +-- > +The _tep_data_flags()_ function gets the latency flags from the record _rec_. > +It reads the "common_flags" field. The _tep_ argument is the trace event parser > +context. Supported latency flags are: > +[verse] > +-- > + _TRACE_FLAG_IRQS_OFF_, Interrupts are disabled. > + _TRACE_FLAG_IRQS_NOSUPPOR_, Reading IRQ flag is not supported by the architecture. Forgot to change here. I'll fix. -- Steve > + _TRACE_FLAG_NEED_RESCHED_, Task needs rescheduling. > + _TRACE_FLAG_HARDIRQ_, Hard IRQ is running. > + _TRACE_FLAG_SOFTIRQ_, Soft IRQ is running. > +-- > +