Provided by: manpages-posix-dev_2.16-1_all bug

NAME

       posix_trace_attr_getlogsize,   posix_trace_attr_getmaxdatasize,   posix_trace_attr_getmaxsystemeventsize,
       posix_trace_attr_getmaxusereventsize,    posix_trace_attr_getstreamsize,     posix_trace_attr_setlogsize,
       posix_trace_attr_setmaxdatasize,  posix_trace_attr_setstreamsize  -  retrieve  and  set trace stream size
       attributes (TRACING)

SYNOPSIS

       #include <sys/types.h>
       #include <trace.h>

       int posix_trace_attr_getlogsize(const trace_attr_t *restrict attr,
              size_t *restrict logsize);

       int posix_trace_attr_getmaxdatasize(const trace_attr_t *restrict attr,
              size_t *restrict maxdatasize);
       int posix_trace_attr_getmaxsystemeventsize(
              const trace_attr_t *restrict attr,
              size_t *restrict eventsize);
       int posix_trace_attr_getmaxusereventsize(
              const trace_attr_t *restrict attr,
              size_t data_len, size_t *restrict eventsize);
       int posix_trace_attr_getstreamsize(const trace_attr_t *restrict attr,
              size_t *restrict streamsize);

       int posix_trace_attr_setlogsize(trace_attr_t *attr,
              size_t logsize);

       int posix_trace_attr_setmaxdatasize(trace_attr_t *attr,
              size_t maxdatasize);
       int posix_trace_attr_setstreamsize(trace_attr_t *attr,
              size_t streamsize);

DESCRIPTION

       The posix_trace_attr_getlogsize() function shall copy the log  size,  in  bytes,  from  the  log-max-size
       attribute  of  the  attributes object pointed to by the attr argument into the variable pointed to by the
       logsize argument. This log size is the maximum total of bytes that shall be allocated for system and user
       trace  events  in  the  trace  log.  The  default value for the log-max-size attribute is implementation-
       defined.

       The posix_trace_attr_setlogsize() function shall set the maximum allowed size, in bytes, in the  log-max-
       size attribute of the attributes object pointed to by the attr argument, using the size value supplied by
       the logsize argument.

       The trace log size shall be  used  if  the  log-full-policy  attribute  is  set  to  POSIX_TRACE_LOOP  or
       POSIX_TRACE_UNTIL_FULL.    If   the   log-full-policy   attribute   is  set  to  POSIX_TRACE_APPEND,  the
       implementation shall ignore the log-max-size attribute.

       The posix_trace_attr_getmaxdatasize() function shall copy the maximum user  trace  event  data  size,  in
       bytes, from the max-data-size attribute of the attributes object pointed to by the attr argument into the
       variable pointed to by the maxdatasize argument. The default value for  the  max-data-size  attribute  is
       implementation-defined.

       The  posix_trace_attr_getmaxsystemeventsize() function shall calculate the maximum memory size, in bytes,
       required to store a single system trace event. This value is calculated for the trace  stream  attributes
       object  pointed  to  by  the  attr  argument  and is returned in the variable pointed to by the eventsize
       argument.

       The values returned as the maximum memory sizes of the user and system trace events shall be such that if
       the  sum  of the maximum memory sizes of a set of the trace events that may be recorded in a trace stream
       is less than or equal to the stream-min-size attribute of that trace  stream,  the  system  provides  the
       necessary resources for recording all those trace events, without loss.

       The  posix_trace_attr_getmaxusereventsize()  function  shall calculate the maximum memory size, in bytes,
       required to store a single user trace event generated by a call to posix_trace_event()  with  a  data_len
       parameter  equal  to  the  data_len  value specified in this call. This value is calculated for the trace
       stream attributes object pointed to by the attr argument and is returned in the variable  pointed  to  by
       the eventsize argument.

       The  posix_trace_attr_getstreamsize() function shall copy the stream size, in bytes, from the stream-min-
       size attribute of the attributes object pointed to by the attr argument into the variable pointed  to  by
       the streamsize argument.

       This  stream size is the current total memory size reserved for system and user trace events in the trace
       stream. The default value for the stream-min-size attribute is implementation-defined.  The  stream  size
       refers  to  memory  used  to  store  trace event records. Other stream data (for example, trace attribute
       values) shall not be included in this size.

       The posix_trace_attr_setmaxdatasize() function shall set the maximum allowed size, in bytes, in the  max-
       data-size  attribute  of  the  attributes  object  pointed  to by the attr argument, using the size value
       supplied by the maxdatasize argument. This maximum size is the maximum allowed size  for  the  user  data
       argument which may be passed to posix_trace_event(). The implementation shall be allowed to truncate data
       passed to trace_user_event which is longer than maxdatasize.

       The posix_trace_attr_setstreamsize() function shall set the  minimum  allowed  size,  in  bytes,  in  the
       stream-min-size  attribute of the attributes object pointed to by the attr argument, using the size value
       supplied by the streamsize argument.

RETURN VALUE

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

       The  posix_trace_attr_getlogsize()  function  stores  the  maximum  trace  log allowed size in the object
       pointed to by logsize, if successful.

       The posix_trace_attr_getmaxdatasize() function stores the maximum trace event record memory size  in  the
       object pointed to by maxdatasize, if successful.

       The  posix_trace_attr_getmaxsystemeventsize()  function  stores the maximum memory size to store a single
       system trace event in the object pointed to by eventsize, if successful.

       The posix_trace_attr_getmaxusereventsize() function stores the maximum memory size to store a single user
       trace event in the object pointed to by eventsize, if successful.

       The  posix_trace_attr_getstreamsize() function stores the maximum trace stream allowed size in the object
       pointed to by streamsize, if successful.

ERRORS

       These functions may fail if:

       EINVAL The value specified by one of the arguments is invalid.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       posix_trace_attr_init() , posix_trace_create() , posix_trace_event() , posix_trace_get_attr() , the  Base
       Definitions volume of IEEE Std 1003.1-2001, <sys/types.h>, <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 .