libtracefs(3) ============= NAME ---- tracefs_option_enable, tracefs_option_disable, tracefs_option_name - Various trace option functions. SYNOPSIS -------- [verse] -- *#include * 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 ... 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* *Tzvetomir Stoyanov* -- REPORTING BUGS -------------- Report bugs to 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).