Scroll to navigation

LIBTRACEEVENT(3) libtraceevent Manual 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

#include <event-parse.h>
int tep_get_page_size(struct tep_handle *tep);
void tep_set_page_size(struct tep_handle *tep, int page_size);
int tep_get_sub_buffer_size(struct tep_handle *tep);
int tep_get_sub_buffer_data_size(struct tep_handle *tep);
int tep_get_sub_buffer_commit_offset(struct tep_handle *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

#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

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

Steven Rostedt <rostedt@goodmis.org[1]>, author of libtraceevent.
Tzvetomir Stoyanov <tz.stoyanov@gmail.com[2]>, author of this man page.

REPORTING BUGS

Report bugs to <linux-trace-devel@vger.kernel.org[3]>

LICENSE

libtraceevent is Free Software licensed under the GNU LGPL 2.1

RESOURCES

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

NOTES

1.
rostedt@goodmis.org
mailto:rostedt@goodmis.org
2.
tz.stoyanov@gmail.com
mailto:tz.stoyanov@gmail.com
3.
linux-trace-devel@vger.kernel.org
mailto:linux-trace-devel@vger.kernel.org
08/31/2024 libtraceevent 1.8.3