bionic (3) posix_trace_eventid_equal.3posix.gz

Provided by: manpages-posix-dev_2013a-2_all bug

PROLOG

       This  manual  page  is part of the POSIX Programmer's Manual.  The Linux implementation of this interface
       may differ (consult the corresponding Linux manual page for details of Linux behavior), or the  interface
       may not be implemented on Linux.

NAME

       posix_trace_eventid_equal,  posix_trace_eventid_get_name,  posix_trace_trid_eventid_open — manipulate the
       trace event type identifier (TRACING)

SYNOPSIS

       #include <trace.h>

       int posix_trace_eventid_equal(trace_id_t trid, trace_event_id_t event1,
           trace_event_id_t event2);
       int posix_trace_eventid_get_name(trace_id_t trid,
           trace_event_id_t event, char *event_name);
       int posix_trace_trid_eventid_open(trace_id_t trid,
           const char *restrict event_name,
           trace_event_id_t *restrict event);

DESCRIPTION

       The posix_trace_eventid_equal() function shall compare the trace event type identifiers event1 and event2
       from the same trace stream or the same trace log identified by the trid argument. If the trace event type
       identifiers event1 and event2 are from different trace streams, the return value shall be unspecified.

       The posix_trace_eventid_get_name() function shall return, in the argument pointed to by  event_name,  the
       trace  event  name  associated with the trace event type identifier identified by the argument event, for
       the trace stream or for the trace log identified by the trid argument. The name of the trace event  shall
       have    a    maximum    of    {TRACE_EVENT_NAME_MAX}    characters   (which   has   the   minimum   value
       {_POSIX_TRACE_EVENT_NAME_MAX}).  Successive calls to  this  function  with  the  same  trace  event  type
       identifier and the same trace stream identifier shall return the same event name.

       The  posix_trace_trid_eventid_open()  function shall associate a user trace event name with a trace event
       type identifier for a given trace stream. The trace stream is identified by the  trid  argument,  and  it
       shall  be  an  active  trace  stream.  The  trace  event  name  is  the string pointed to by the argument
       event_name.  It shall have a maximum of {TRACE_EVENT_NAME_MAX} characters (which has  the  minimum  value
       {_POSIX_TRACE_EVENT_NAME_MAX}).   The number of user trace event type identifiers that can be defined for
       any given process is limited by the maximum value {TRACE_USER_EVENT_MAX}, which  has  the  minimum  value
       {_POSIX_TRACE_USER_EVENT_MAX}.

       If  the  Trace  Inherit  option  is  not  supported,  the  posix_trace_trid_eventid_open() function shall
       associate the user trace event name pointed to by  the  event_name  argument  with  a  trace  event  type
       identifier  that  is  unique  for  the  process  being  traced in the trace stream identified by the trid
       argument, and is returned in the variable pointed to by the event argument. If the user trace event  name
       has  already been mapped for the traced process, then the previously assigned trace event type identifier
       shall be returned. If the per-process user trace event name limit represented  by  {TRACE_USER_EVENT_MAX}
       has  been reached, the pre-defined POSIX_TRACE_UNNAMED_USEREVENT (see Table 2-7, Trace Option: User Trace
       Event) user trace event shall be returned.

       If the Trace Inherit option is supported, the posix_trace_trid_eventid_open()  function  shall  associate
       the  user  trace event name pointed to by the event_name argument with a trace event type identifier that
       is unique for all the processes being traced in the trace stream identified by the trid argument, and  is
       returned  in the variable pointed to by the event argument. If the user trace event name has already been
       mapped for the traced processes, then the previously  assigned  trace  event  type  identifier  shall  be
       returned.  If  the per-process user trace event name limit represented by {TRACE_USER_EVENT_MAX} has been
       reached, the pre-defined POSIX_TRACE_UNNAMED_USEREVENT (see Table 2-7, Trace Option:  User  Trace  Event)
       user trace event shall be returned.

RETURN VALUE

       Upon   successful  completion,  the  posix_trace_eventid_get_name()  and  posix_trace_trid_eventid_open()
       functions shall return a value of zero. Otherwise, they shall return the corresponding error number.

       The posix_trace_eventid_equal() function shall return a non-zero value if event1 and  event2  are  equal;
       otherwise,  a  value of zero shall be returned. No errors are defined. If either event1 or event2 are not
       valid trace event type identifiers for the trace stream specified by trid or if the trid is invalid,  the
       behavior shall be unspecified.

       The posix_trace_eventid_get_name() function stores the trace event name value in the object pointed to by
       event_name, if successful.

       The posix_trace_trid_eventid_open() function stores the trace event type identifier value in  the  object
       pointed to by event, if successful.

ERRORS

       The posix_trace_eventid_get_name() and posix_trace_trid_eventid_open() functions shall fail if:

       EINVAL The trid argument was not a valid trace stream identifier.

       The posix_trace_trid_eventid_open() function shall fail if:

       ENAMETOOLONG
              The  size  of  the  name pointed to by the event_name argument was longer than the implementation-
              defined value {TRACE_EVENT_NAME_MAX}.

       The posix_trace_eventid_get_name() function shall fail if:

       EINVAL The trace event type identifier event was not associated with any name.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       The  posix_trace_eventid_equal(),  posix_trace_eventid_get_name(),  and   posix_trace_trid_eventid_open()
       functions may be removed in a future version.

SEE ALSO

       Table 2-7, Trace Option: User Trace Event, exec, posix_trace_event(), posix_trace_getnext_event()

       The Base Definitions volume of POSIX.1‐2008, <trace.h>

       Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2013 Edition,
       Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open  Group  Base
       Specifications  Issue 7, Copyright (C) 2013 by the Institute of Electrical and Electronics Engineers, Inc
       and The Open Group.  (This is POSIX.1-2008 with the 2013 Technical Corrigendum 1 applied.) In  the  event
       of  any  discrepancy between this version and the original IEEE and The Open Group Standard, the original
       IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at
       http://www.unix.org/online.html .

       Any  typographical  or formatting errors that appear in this page are most likely to have been introduced
       during  the  conversion  of  the  source  files  to  man  page  format.  To  report  such   errors,   see
       https://www.kernel.org/doc/man-pages/reporting_bugs.html .