tep_event_common_fields(3) — Linux manual page

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

LIBTRACEEVENT(3)           libtraceevent Manual          LIBTRACEEVENT(3)

NAME         top

       tep_event_common_fields, tep_event_fields - Get a list of fields
       for an event.

SYNOPSIS         top

       #include <event-parse.h>

       struct tep_format_field **tep_event_common_fields(struct tep_event *event);
       struct tep_format_field **tep_event_fields(struct tep_event *event);

DESCRIPTION         top

       The tep_event_common_fields() function returns an array of
       pointers to common fields for the event. The array is allocated in
       the function and must be freed by free(). The last element of the
       array is NULL.

       The tep_event_fields() function returns an array of pointers to
       event specific fields for the event. The array is allocated in the
       function and must be freed by free(). The last element of the
       array is NULL.

RETURN VALUE         top

       Both tep_event_common_fields() and tep_event_fields() functions
       return an array of pointers to tep_format_field structures in case
       of success, or NULL in case of an error.

EXAMPLE         top

           #include <event-parse.h>
           ...
           struct tep_handle *tep = tep_alloc();
           ...
           int i;
           struct tep_format_field **fields;
           struct tep_event *event = tep_find_event_by_name(tep, "kvm", "kvm_exit");
           if (event != NULL) {
                   fields = tep_event_common_fields(event);
                   if (fields != NULL) {
                           i = 0;
                           while (fields[i]) {
                                   /*
                                     walk through the list of the common fields
                                     of the kvm_exit event
                                   */
                                   i++;
                           }
                           free(fields);
                   }
                   fields = tep_event_fields(event);
                   if (fields != NULL) {
                           i = 0;
                           while (fields[i]) {
                                   /*
                                     walk through the list of the event specific
                                     fields of the kvm_exit event
                                   */
                                   i++;
                           }
                           free(fields);
                   }
           }
           ...

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 of libtraceevent.
           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 the libtraceevent (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-02-02.  (At that time, the date of the most recent commit
       that was found in the repository was 2025-01-22.)  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 is not part of the original manual page), send a
       mail to man-pages@man7.org

libtraceevent 1.7.3             09/24/2023               LIBTRACEEVENT(3)