Man Linux: Main Page and Category List

NAME

       posix_trace_close,  posix_trace_open,  posix_trace_rewind  -  trace log
       management (TRACING)

SYNOPSIS

       #include <trace.h>

       int posix_trace_close(trace_id_t trid);
       int posix_trace_open(int file_desc, trace_id_t *trid);
       int posix_trace_rewind(trace_id_t trid);

DESCRIPTION

       The  posix_trace_close()  function  shall  deallocate  the  trace   log
       identifier  indicated  by trid, and all of its associated resources. If
       there is no valid trace log pointed to by the trid, this function shall
       fail.

       The  posix_trace_open() function shall allocate the necessary resources
       and establish the connection between a  trace  log  identified  by  the
       file_desc  argument  and  a  trace  stream identifier identified by the
       object pointed to by the trid argument. The file_desc  argument  should
       be  a  valid  open file descriptor that corresponds to a trace log. The
       file_desc argument shall be open for reading. The current  trace  event
       timestamp,  which  specifies the timestamp of the trace event that will
       be read by the next call to posix_trace_getnext_event(), shall  be  set
       to  the  timestamp  of the oldest trace event recorded in the trace log
       identified by trid.

       The posix_trace_open() function shall return a trace stream  identifier
       in  the variable pointed to by the trid argument, that may only be used
       by the following functions:

        posix_trace_close()                      posix_trace_get_attr()
        posix_trace_eventid_equal()              posix_trace_get_status()
        posix_trace_eventid_get_name()           posix_trace_getnext_event()
        posix_trace_eventtypelist_getnext_id()   posix_trace_rewind()
        posix_trace_eventtypelist_rewind()

       In particular, notice that the operations  normally  used  by  a  trace
       controller process, such as posix_trace_start(), posix_trace_stop(), or
       posix_trace_shutdown(),  cannot  be  invoked  using  the  trace  stream
       identifier returned by the posix_trace_open() function.

       The  posix_trace_rewind()  function shall reset the current trace event
       timestamp, which specifies the timestamp of the trace event  that  will
       be  read  by  the  next  call  to  posix_trace_getnext_event(),  to the
       timestamp  of  the  oldest  trace  event  recorded  in  the  trace  log
       identified by trid.

RETURN VALUE

       Upon  successful  completion,  these  functions shall return a value of
       zero. Otherwise, they shall return the corresponding error number.

       If successful, the posix_trace_open() function stores the trace  stream
       identifier value in the object pointed to by trid.

ERRORS

       The posix_trace_open() function shall fail if:

       EINTR  The  operation was interrupted by a signal and thus no trace log
              was opened.

       EINVAL The object pointed to by file_desc  does  not  correspond  to  a
              valid trace log.

       The posix_trace_close() and posix_trace_rewind() functions may fail if:

       EINVAL The object pointed to by trid does not  correspond  to  a  valid
              trace log.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       posix_trace_get_attr()        ,        posix_trace_get_filter()       ,
       posix_trace_getnext_event()  ,   the   Base   Definitions   volume   of
       IEEE Std 1003.1-2001, <trace.h>

COPYRIGHT

       Portions  of  this text are reprinted and reproduced in electronic form
       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
       --  Portable  Operating  System  Interface (POSIX), The Open Group Base
       Specifications Issue 6, Copyright (C) 2001-2003  by  the  Institute  of
       Electrical  and  Electronics  Engineers, Inc and The Open Group. 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.opengroup.org/unix/online.html .