tnfctl_buffer_alloc man page on SmartOS

Man page or keyword search:  
man Server   16655 pages
apropos Keyword Search (all sections)
Output format
SmartOS logo
[printable version]

TNFCTL_BUFFER_ALLOC(3TNF)			     TNFCTL_BUFFER_ALLOC(3TNF)

NAME
       tnfctl_buffer_alloc,  tnfctl_buffer_dealloc  - allocate or deallocate a
       buffer for trace data

SYNOPSIS
       cc [ flag ... ] file ... -ltnfctl [ library ... ]
       #include <tnf/tnfctl.h>
       tnfctl_errcode_t tnfctl_buffer_alloc(tnfctl_handle_t *hndl,
	    const char *trace_file_name, size_t trace_buffer_size);

       tnfctl_buffer_dealloc(tnfctl_handle_t *hndl);

DESCRIPTION
       tnfctl_buffer_alloc() allocates a buffer	 to  which  trace  events  are
       logged.	When  tracing  a  process  using  a  tnfctl handle returned by
       tnfctl_pid_open(3TNF),	    tnfctl_exec_open(3TNF),	  tnfctl_indi‐
       rect_open(3TNF),	 and  tnfctl_internal_open(3TNF)),  trace_file_name is
       the name of the trace file to which trace events should be  logged.  It
       can be an absolute path specification or a relative path specification.
       If it is relative, the current working directory of the process that is
       calling	 tnfctl_buffer_alloc()	is prefixed to trace_file_name. If the
       named trace file already exists, it is overwritten. For kernel tracing,
       that  is,  for  a  tnfctl  handle returned by tnfctl_kernel_open(3TNF),
       trace events are	 logged	 to  a	trace  buffer  in  memory;  therefore,
       trace_file_name	is ignored.  Use tnfxtract(1) to extract a kernel buf‐
       fer into a file.

       trace_buffer_size is the size in bytes of the trace buffer that	should
       be  allocated. An error is returned if an attempt is made to allocate a
       buffer when one already	exists.	   tnfctl_buffer_alloc()  affects  the
       trace  attributes;  use	tnfctl_trace_attrs_get(3TNF) to get the latest
       trace attributes after a buffer is allocated.

       tnfctl_buffer_dealloc() is used to deallocate  a	 kernel	 trace	buffer
       that  is	 no  longer  needed. hndl must be a kernel handle, returned by
       tnfctl_kernel_open(3TNF). A process's trace file cannot be  deallocated
       using  tnfctl_buffer_dealloc().	Instead,  once	the  trace  file is no
       longer needed for analysis and after  the process being	traced	exits,
       use  rm(1) to remove the trace file. Do not remove the trace file while
       the  process  being  traced  is	still  alive.  tnfctl_buffer_dealloc()
       affects	the trace attributes; use  tnfctl_trace_attrs_get(3TNF) to get
       the latest trace attributes after a buffer is deallocated.

       For a complete discussion of  tnf tracing, see tracing(3TNF).

RETURN VALUES
       tnfctl_buffer_alloc()	  and	   tnfctl_buffer_dealloc()	return
       TNFCTL_ERR_NONE upon success.

ERRORS
       The following error codes apply to tnfctl_buffer_alloc():

       TNFCTL_ERR_BUFEXISTS
				  A buffer already exists.

       TNFCTL_ERR_ACCES
				  Permission  denied; could not create a trace
				  file.

       TNFCTL_ERR_SIZETOOSMALL
				  The  trace_buffer_size requested is  smaller
				  than	the  minimum trace buffer size needed.
				  Use trace_min_size of	 trace	attributes  in
				  tnfctl_trace_attrs_get(3TNF)	 to  determine
				  the minimum size of the buffer.

       TNFCTL_ERR_SIZETOOBIG
				  The requested trace file size is too big.

       TNFCTL_ERR_BADARG
				  trace_file_name is   NULL  or	 the  absolute
				  path name is longer than MAXPATHLEN.

       TNFCTL_ERR_ALLOCFAIL
				  A memory allocation failure occurred.

       TNFCTL_ERR_INTERNAL
				  An internal error occurred.

       The following error codes apply to tnfctl_buffer_dealloc():

       TNFCTL_ERR_BADARG
				hndl is not a kernel handle.

       TNFCTL_ERR_NOBUF
				No buffer exists to deallocate.

       TNFCTL_ERR_BADDEALLOC
				Cannot	deallocate a trace buffer unless trac‐
				ing	     is		 stopped.	   Use
				tnfctl_trace_state_set(3TNF) to stop tracing.

       TNFCTL_ERR_INTERNAL
				An internal error occurred.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       ┌───────────────┬─────────────────┐
       │ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
       ├───────────────┼─────────────────┤
       │MT Level       │ MT-Safe	 │
       └───────────────┴─────────────────┘

SEE ALSO
       prex(1),	  rm(1),   tnfxtract(1),   TNF_PROBE(3TNF),   libtnfctl(3TNF),
       tnfctl_exec_open(3TNF),	  tnfctl_indirect_open(3TNF),	 tnfctl_inter‐
       nal_open(3TNF),	   tnfctl_kernel_open(3TNF),	tnfctl_pid_open(3TNF),
       tnfctl_trace_attrs_get(3TNF), tracing(3TNF), attributes(5)

				  Mar 4, 1997	     TNFCTL_BUFFER_ALLOC(3TNF)
[top]

List of man pages available for SmartOS

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net