libtraceevent(3)
================

NAME
----
tep_get_page_size, tep_set_page_size, tep_get_sub_buffer_data_size, tep_get_sub_buffer_size - Get / set the size of a memory page on
the machine, where the trace is generated

SYNOPSIS
--------
[verse]
--
*#include <event-parse.h>*

int *tep_get_page_size*(struct tep_handle pass:[*]_tep_);
void *tep_set_page_size*(struct tep_handle pass:[*]_tep_, int _page_size_);
int *tep_get_sub_buffer_size*(struct tep_handle pass:[*]_tep_);
int *tep_get_sub_buffer_data_size*(struct tep_handle pass:[*]_tep_);
int *tep_get_sub_buffer_commit_offset*(struct tep_handle pass:[*]_tep_);
--

DESCRIPTION
-----------
The *tep_get_page_size()* function returns the size of a memory page on
the machine, where the trace is generated. The _tep_ argument is trace
event parser context.

The *tep_set_page_size()* function stores in the _tep_ context the size of a
memory page on the machine, where the trace is generated.
The _tep_ argument is trace event parser context.
The _page_size_ argument is the size of a memory page, in bytes.

The *tep_get_sub_buffer_size()* returns the size of each "sub buffer" of the
ring buffer. The Linux kernel ring buffer is broken up into sections called
sub buffers. This returns the size of those buffers.

The *tep_get_sub_buffer_data_size()* returns the size of just the data portion
of the sub buffers.

The *tep_get_sub_buffer_commit_offset()* returns the offset on the sub buffer
that holds the committed portion of data. This number contains the index from
the data portion of the sub buffer that is the end of the last element on the
sub buffer.

RETURN VALUE
------------
The *tep_get_page_size()* function returns size of the memory page, in bytes.

The *tep_get_sub_buffer_size()* function returns the number of bytes each sub
buffer is made up of.

The *tep_get_sub_buffer_commit_offset()* function returns the location on the
sub buffer that contains the index of the last element.

EXAMPLE
-------
[source,c]
--
#include <unistd.h>
#include <event-parse.h>
...
struct tep_handle *tep = tep_alloc();
...
	int page_size = getpagesize();

	tep_set_page_size(tep, page_size);

	printf("The page size for this machine is %d\n", tep_get_page_size(tep));

--

FILES
-----
[verse]
--
*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
--------
*libtraceevent*(3), *trace-cmd*(1)

AUTHOR
------
[verse]
--
*Steven Rostedt* <rostedt@goodmis.org>, author of *libtraceevent*.
*Tzvetomir Stoyanov* <tz.stoyanov@gmail.com>, author of this man page.
--
REPORTING BUGS
--------------
Report bugs to  <linux-trace-devel@vger.kernel.org>

LICENSE
-------
libtraceevent is Free Software licensed under the GNU LGPL 2.1

RESOURCES
---------
https://git.kernel.org/pub/scm/libs/libtrace/libtraceevent.git/
