101 lines
2.5 KiB
Plaintext
101 lines
2.5 KiB
Plaintext
|
|
libtracefs(3)
|
||
|
|
=============
|
||
|
|
|
||
|
|
NAME
|
||
|
|
----
|
||
|
|
tracefs_option_enable, tracefs_option_disable, tracefs_option_name -
|
||
|
|
Various trace option functions.
|
||
|
|
|
||
|
|
SYNOPSIS
|
||
|
|
--------
|
||
|
|
[verse]
|
||
|
|
--
|
||
|
|
*#include <tracefs.h>*
|
||
|
|
|
||
|
|
int *tracefs_option_enable*(struct tracefs_instance pass:[*]_instance_, enum tracefs_option_id _id_);
|
||
|
|
int *tracefs_option_disable*(struct tracefs_instance pass:[*]_instance_, enum tracefs_option_id _id_);
|
||
|
|
const char pass:[*]*tracefs_option_name*(enum tracefs_option_id _id_);
|
||
|
|
--
|
||
|
|
|
||
|
|
DESCRIPTION
|
||
|
|
-----------
|
||
|
|
This set of APIs can be used to enable and disable ftrace options and to get the name of an option.
|
||
|
|
|
||
|
|
The *tracefs_option_enable()* function enables the option with _id_ in the given _instance_. If
|
||
|
|
_instance_ is NULL, the option is enabled in the top trace instance.
|
||
|
|
|
||
|
|
The *tracefs_option_disable()* function disables the option with _id_ in the given _instance_. If
|
||
|
|
_instance_ is NULL, the option is disabled in the top trace instance.
|
||
|
|
|
||
|
|
The *tracefs_option_name()* function returns a string, representing the option with _id_. The string
|
||
|
|
must *not* be freed.
|
||
|
|
|
||
|
|
|
||
|
|
RETURN VALUE
|
||
|
|
------------
|
||
|
|
The *tracefs_option_enable()* and *tracefs_option_disable()* functions return 0 if the state of the
|
||
|
|
option is set successfully, or -1 in case of an error.
|
||
|
|
|
||
|
|
The *tracefs_option_name()* function returns string with option name, or "unknown" in case of an
|
||
|
|
error. The returned string must *not* be freed.
|
||
|
|
|
||
|
|
EXAMPLE
|
||
|
|
-------
|
||
|
|
[source,c]
|
||
|
|
--
|
||
|
|
#include <tracefs.h>
|
||
|
|
...
|
||
|
|
if (tracefs_option_enable(NULL, TRACEFS_OPTION_ANNOTATE)) {
|
||
|
|
/* Failed to enable annotate option in top trace instance */
|
||
|
|
}
|
||
|
|
...
|
||
|
|
if (tracefs_option_disable(NULL, TRACEFS_OPTION_CONTEXT_INFO)) {
|
||
|
|
/* Failed to disable context info option in top trace instance */
|
||
|
|
}
|
||
|
|
...
|
||
|
|
char *name = tracefs_option_name(TRACEFS_OPTION_FUNC_STACKTRACE);
|
||
|
|
if (strcmp(name, "unknown")) {
|
||
|
|
/* Cannot get the name of the option */
|
||
|
|
}
|
||
|
|
|
||
|
|
--
|
||
|
|
FILES
|
||
|
|
-----
|
||
|
|
[verse]
|
||
|
|
--
|
||
|
|
*tracefs.h*
|
||
|
|
Header file to include in order to have access to the library APIs.
|
||
|
|
*-ltracefs*
|
||
|
|
Linker switch to add when building a program that uses the library.
|
||
|
|
--
|
||
|
|
|
||
|
|
SEE ALSO
|
||
|
|
--------
|
||
|
|
*libtracefs*(3),
|
||
|
|
*libtraceevent*(3),
|
||
|
|
*trace-cmd*(1)
|
||
|
|
|
||
|
|
AUTHOR
|
||
|
|
------
|
||
|
|
[verse]
|
||
|
|
--
|
||
|
|
*Steven Rostedt* <rostedt@goodmis.org>
|
||
|
|
*Tzvetomir Stoyanov* <tz.stoyanov@gmail.com>
|
||
|
|
--
|
||
|
|
REPORTING BUGS
|
||
|
|
--------------
|
||
|
|
Report bugs to <linux-trace-devel@vger.kernel.org>
|
||
|
|
|
||
|
|
LICENSE
|
||
|
|
-------
|
||
|
|
libtracefs is Free Software licensed under the GNU LGPL 2.1
|
||
|
|
|
||
|
|
RESOURCES
|
||
|
|
---------
|
||
|
|
https://git.kernel.org/pub/scm/libs/libtrace/libtracefs.git/
|
||
|
|
|
||
|
|
COPYING
|
||
|
|
-------
|
||
|
|
Copyright \(C) 2020 VMware, Inc. Free use of this software is granted under
|
||
|
|
the terms of the GNU Public License (GPL).
|