Movatterモバイル変換


[0]ホーム

URL:


man7.org > Linux >man-pages

Linux/UNIX system programming training


tep_data_type(3) — Linux manual page

NAME |SYNOPSIS |DESCRIPTION |RETURN VALUE |EXAMPLE |FILES |SEE ALSO |AUTHOR |REPORTING BUGS |LICENSE |RESOURCES |NOTES |COLOPHON

LIBTRACEEVENT(3)           libtraceevent ManualLIBTRACEEVENT(3)

NAME        top

       tep_data_type, tep_data_pid, tep_data_preempt_count,       tep_data_flags - Extract common fields from a record.

SYNOPSIS        top

#include <event-parse.h>       enumtrace_flag_type{TRACE_FLAG_IRQS_OFF,TRACE_FLAG_IRQS_NOSUPPORT,TRACE_FLAG_NEED_RESCHED,TRACE_FLAG_HARDIRQ,TRACE_FLAG_SOFTIRQ,       };       inttep_data_type(struct tep_handle *tep, struct tep_record *rec);       inttep_data_pid(struct tep_handle *tep, struct tep_record *rec);       inttep_data_preempt_count(struct tep_handle *tep, struct tep_record *rec);       inttep_data_flags(struct tep_handle *tep, struct tep_record *rec);

DESCRIPTION        top

       This set of functions can be used to extract common fields from a       record.       Thetep_data_type()function gets the event id from the recordrec. It reads the "common_type" field. Thetep argument is the       trace event parser context.       Thetep_data_pid()function gets the process id from the recordrec. It reads the "common_pid" field. Thetep argument is the       trace event parser context.       Thetep_data_preempt_count()function gets the preemption count       from the recordrec. It reads the "common_preempt_count" field.       Thetep argument is the trace event parser context.       Thetep_data_flags()function gets the latency flags from the       recordrec. It reads the "common_flags" field. Thetep argument is       the trace event parser context. Supported latency flags are:TRACE_FLAG_IRQS_OFF,          Interrupts are disabled.TRACE_FLAG_IRQS_NOSUPPORT,    Reading IRQ flag is not supported by the architecture.TRACE_FLAG_NEED_RESCHED,      Task needs rescheduling.TRACE_FLAG_HARDIRQ,           Hard IRQ is running.TRACE_FLAG_SOFTIRQ,           Soft IRQ is running.

RETURN VALUE        top

       Thetep_data_type()function returns an integer, representing the       event id.       Thetep_data_pid()function returns an integer, representing the       process id       Thetep_data_preempt_count()function returns an integer,       representing the preemption count.       Thetep_data_flags()function returns an integer, representing the       latency flags. Look at thetrace_flag_type enum for supported       flags.       All these functions in case of an error return a negative integer.

EXAMPLE        top

           #include <event-parse.h>           ...           struct tep_handle *tep = tep_alloc();           ...           void process_record(struct tep_record *record)           {                   int data;                   data = tep_data_type(tep, record);                   if (data >= 0) {                           /* Got the ID of the event */                   }                   data = tep_data_pid(tep, record);                   if (data >= 0) {                           /* Got the process ID */                   }                   data = tep_data_preempt_count(tep, record);                   if (data >= 0) {                           /* Got the preemption count */                   }                   data = tep_data_flags(tep, record);                   if (data >= 0) {                           /* Got the latency flags */                   }           }           ...

FILES        top

event-parse.h                   Header file to include in order to have access to the library APIs.-ltraceevent                   Linker switch to add when building a program that uses the library.

SEE ALSO        top

libtraceevent(3),trace-cmd(1)

AUTHOR        top

Steven Rostedt<rostedt@goodmis.org[1]>, author oflibtraceevent.Tzvetomir Stoyanov<tz.stoyanov@gmail.com[2]>, author of this man page.

REPORTING BUGS        top

       Report bugs to <linux-trace-devel@vger.kernel.org[3]>

LICENSE        top

       libtraceevent is Free Software licensed under the GNU LGPL 2.1

RESOURCES        top

https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/

NOTES        top

        1. rostedt@goodmis.org           mailto:rostedt@goodmis.org        2. tz.stoyanov@gmail.com           mailto:tz.stoyanov@gmail.com        3. linux-trace-devel@vger.kernel.org           mailto:linux-trace-devel@vger.kernel.org

COLOPHON        top

       This page is part of thelibtraceevent (Linux kernel trace event       library) project.  Information about the project can be found at       ⟨https://www.trace-cmd.org/⟩.  If you have a bug report for this       manual page, see ⟨https://www.trace-cmd.org/⟩.  This page was       obtained from the project's upstream Git repository       ⟨https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git⟩       on 2025-08-11.  (At that time, the date of the most recent commit       that was found in the repository was 2025-05-30.)  If you discover       any rendering problems in this HTML version of the page, or you       believe there is a better or more up-to-date source for the page,       or you have corrections or improvements to the information in this       COLOPHON (which isnot part of the original manual page), send a       mail to man-pages@man7.orglibtraceevent 1.7.3             09/24/2023LIBTRACEEVENT(3)


HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface.

For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere.

Hosting byjambit GmbH.

Cover of TLPI


[8]ページ先頭

©2009-2025 Movatter.jp