Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c32d52b4 authored by Tzvetomir Stoyanov (VMware)'s avatar Tzvetomir Stoyanov (VMware) Committed by Arnaldo Carvalho de Melo
Browse files

tools lib traceevent, perf tools: Rename pevent plugin related APIs



In order to make libtraceevent into a proper library, variables, data
structures and functions require a unique prefix to prevent name space
conflicts. That prefix will be "tep_" and not "pevent_". This changes
the pevent plugin related API.

Signed-off-by: default avatarTzvetomir Stoyanov (VMware) <tz.stoyanov@gmail.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Yordan Karadzhov (VMware) <y.karadz@gmail.com>
Cc: linux-trace-devel@vger.kernel.org
Link: http://lkml.kernel.org/r/20180808180700.005287044@goodmis.org


Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent cbc49b25
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -88,7 +88,7 @@ struct event_handler {
	int				id;
	int				id;
	const char			*sys_name;
	const char			*sys_name;
	const char			*event_name;
	const char			*event_name;
	pevent_event_handler_func	func;
	tep_event_handler_func		func;
	void				*context;
	void				*context;
};
};


@@ -6633,7 +6633,7 @@ static struct event_format *pevent_search_event(struct tep_handle *pevent, int i
 */
 */
int pevent_register_event_handler(struct tep_handle *pevent, int id,
int pevent_register_event_handler(struct tep_handle *pevent, int id,
				  const char *sys_name, const char *event_name,
				  const char *sys_name, const char *event_name,
				  pevent_event_handler_func func, void *context)
				  tep_event_handler_func func, void *context)
{
{
	struct event_format *event;
	struct event_format *event;
	struct event_handler *handle;
	struct event_handler *handle;
@@ -6682,7 +6682,7 @@ int pevent_register_event_handler(struct tep_handle *pevent, int id,


static int handle_matches(struct event_handler *handler, int id,
static int handle_matches(struct event_handler *handler, int id,
			  const char *sys_name, const char *event_name,
			  const char *sys_name, const char *event_name,
			  pevent_event_handler_func func, void *context)
			  tep_event_handler_func func, void *context)
{
{
	if (id >= 0 && id != handler->id)
	if (id >= 0 && id != handler->id)
		return 0;
		return 0;
@@ -6717,7 +6717,7 @@ static int handle_matches(struct event_handler *handler, int id,
 */
 */
int pevent_unregister_event_handler(struct tep_handle *pevent, int id,
int pevent_unregister_event_handler(struct tep_handle *pevent, int id,
				    const char *sys_name, const char *event_name,
				    const char *sys_name, const char *event_name,
				    pevent_event_handler_func func, void *context)
				    tep_event_handler_func func, void *context)
{
{
	struct event_format *event;
	struct event_format *event;
	struct event_handler *handle;
	struct event_handler *handle;
+28 −28
Original line number Original line Diff line number Diff line
@@ -101,16 +101,16 @@ extern int trace_seq_do_printf(struct trace_seq *s);
struct tep_handle;
struct tep_handle;
struct event_format;
struct event_format;


typedef int (*pevent_event_handler_func)(struct trace_seq *s,
typedef int (*tep_event_handler_func)(struct trace_seq *s,
				      struct tep_record *record,
				      struct tep_record *record,
				      struct event_format *event,
				      struct event_format *event,
				      void *context);
				      void *context);


typedef int (*pevent_plugin_load_func)(struct tep_handle *pevent);
typedef int (*tep_plugin_load_func)(struct tep_handle *pevent);
typedef int (*pevent_plugin_unload_func)(struct tep_handle *pevent);
typedef int (*tep_plugin_unload_func)(struct tep_handle *pevent);


struct pevent_plugin_option {
struct tep_plugin_option {
	struct pevent_plugin_option	*next;
	struct tep_plugin_option	*next;
	void				*handle;
	void				*handle;
	char				*file;
	char				*file;
	char				*name;
	char				*name;
@@ -124,20 +124,20 @@ struct pevent_plugin_option {
/*
/*
 * Plugin hooks that can be called:
 * Plugin hooks that can be called:
 *
 *
 * PEVENT_PLUGIN_LOADER:  (required)
 * TEP_PLUGIN_LOADER:  (required)
 *   The function name to initialized the plugin.
 *   The function name to initialized the plugin.
 *
 *
 *   int PEVENT_PLUGIN_LOADER(struct tep_handle *pevent)
 *   int TEP_PLUGIN_LOADER(struct tep_handle *pevent)
 *
 *
 * PEVENT_PLUGIN_UNLOADER:  (optional)
 * TEP_PLUGIN_UNLOADER:  (optional)
 *   The function called just before unloading
 *   The function called just before unloading
 *
 *
 *   int PEVENT_PLUGIN_UNLOADER(struct tep_handle *pevent)
 *   int TEP_PLUGIN_UNLOADER(struct tep_handle *pevent)
 *
 *
 * PEVENT_PLUGIN_OPTIONS:  (optional)
 * TEP_PLUGIN_OPTIONS:  (optional)
 *   Plugin options that can be set before loading
 *   Plugin options that can be set before loading
 *
 *
 *   struct pevent_plugin_option PEVENT_PLUGIN_OPTIONS[] = {
 *   struct tep_plugin_option TEP_PLUGIN_OPTIONS[] = {
 *	{
 *	{
 *		.name = "option-name",
 *		.name = "option-name",
 *		.plugin_alias = "override-file-name", (optional)
 *		.plugin_alias = "override-file-name", (optional)
@@ -158,19 +158,19 @@ struct pevent_plugin_option {
 *   .set will be processed. If .value is defined, then it is considered
 *   .set will be processed. If .value is defined, then it is considered
 *   a string option and .set will be ignored.
 *   a string option and .set will be ignored.
 *
 *
 * PEVENT_PLUGIN_ALIAS: (optional)
 * TEP_PLUGIN_ALIAS: (optional)
 *   The name to use for finding options (uses filename if not defined)
 *   The name to use for finding options (uses filename if not defined)
 */
 */
#define PEVENT_PLUGIN_LOADER pevent_plugin_loader
#define TEP_PLUGIN_LOADER tep_plugin_loader
#define PEVENT_PLUGIN_UNLOADER pevent_plugin_unloader
#define TEP_PLUGIN_UNLOADER tep_plugin_unloader
#define PEVENT_PLUGIN_OPTIONS pevent_plugin_options
#define TEP_PLUGIN_OPTIONS tep_plugin_options
#define PEVENT_PLUGIN_ALIAS pevent_plugin_alias
#define TEP_PLUGIN_ALIAS tep_plugin_alias
#define _MAKE_STR(x)	#x
#define _MAKE_STR(x)	#x
#define MAKE_STR(x)	_MAKE_STR(x)
#define MAKE_STR(x)	_MAKE_STR(x)
#define PEVENT_PLUGIN_LOADER_NAME MAKE_STR(PEVENT_PLUGIN_LOADER)
#define TEP_PLUGIN_LOADER_NAME MAKE_STR(TEP_PLUGIN_LOADER)
#define PEVENT_PLUGIN_UNLOADER_NAME MAKE_STR(PEVENT_PLUGIN_UNLOADER)
#define TEP_PLUGIN_UNLOADER_NAME MAKE_STR(TEP_PLUGIN_UNLOADER)
#define PEVENT_PLUGIN_OPTIONS_NAME MAKE_STR(PEVENT_PLUGIN_OPTIONS)
#define TEP_PLUGIN_OPTIONS_NAME MAKE_STR(TEP_PLUGIN_OPTIONS)
#define PEVENT_PLUGIN_ALIAS_NAME MAKE_STR(PEVENT_PLUGIN_ALIAS)
#define TEP_PLUGIN_ALIAS_NAME MAKE_STR(TEP_PLUGIN_ALIAS)


enum format_flags {
enum format_flags {
	FIELD_IS_ARRAY		= 1,
	FIELD_IS_ARRAY		= 1,
@@ -327,7 +327,7 @@ struct event_format {
	struct format		format;
	struct format		format;
	struct print_fmt	print_fmt;
	struct print_fmt	print_fmt;
	char			*system;
	char			*system;
	pevent_event_handler_func handler;
	tep_event_handler_func	handler;
	void			*context;
	void			*context;
};
};


@@ -441,8 +441,8 @@ void traceevent_unload_plugins(struct plugin_list *plugin_list,
char **traceevent_plugin_list_options(void);
char **traceevent_plugin_list_options(void);
void traceevent_plugin_free_options_list(char **list);
void traceevent_plugin_free_options_list(char **list);
int traceevent_plugin_add_options(const char *name,
int traceevent_plugin_add_options(const char *name,
				  struct pevent_plugin_option *options);
				  struct tep_plugin_option *options);
void traceevent_plugin_remove_options(struct pevent_plugin_option *options);
void traceevent_plugin_remove_options(struct tep_plugin_option *options);
void traceevent_print_plugins(struct trace_seq *s,
void traceevent_print_plugins(struct trace_seq *s,
			      const char *prefix, const char *suffix,
			      const char *prefix, const char *suffix,
			      const struct plugin_list *list);
			      const struct plugin_list *list);
@@ -675,10 +675,10 @@ int pevent_print_func_field(struct trace_seq *s, const char *fmt,


int pevent_register_event_handler(struct tep_handle *pevent, int id,
int pevent_register_event_handler(struct tep_handle *pevent, int id,
				  const char *sys_name, const char *event_name,
				  const char *sys_name, const char *event_name,
				  pevent_event_handler_func func, void *context);
				  tep_event_handler_func func, void *context);
int pevent_unregister_event_handler(struct tep_handle *pevent, int id,
int pevent_unregister_event_handler(struct tep_handle *pevent, int id,
				    const char *sys_name, const char *event_name,
				    const char *sys_name, const char *event_name,
				    pevent_event_handler_func func, void *context);
				    tep_event_handler_func func, void *context);
int pevent_register_print_function(struct tep_handle *pevent,
int pevent_register_print_function(struct tep_handle *pevent,
				   pevent_func_handler func,
				   pevent_func_handler func,
				   enum pevent_func_arg_type ret_type,
				   enum pevent_func_arg_type ret_type,
+12 −12
Original line number Original line Diff line number Diff line
@@ -34,7 +34,7 @@


static struct registered_plugin_options {
static struct registered_plugin_options {
	struct registered_plugin_options	*next;
	struct registered_plugin_options	*next;
	struct pevent_plugin_option		*options;
	struct tep_plugin_option		*options;
} *registered_options;
} *registered_options;


static struct trace_plugin_options {
static struct trace_plugin_options {
@@ -58,7 +58,7 @@ static void lower_case(char *str)
		*str = tolower(*str);
		*str = tolower(*str);
}
}


static int update_option_value(struct pevent_plugin_option *op, const char *val)
static int update_option_value(struct tep_plugin_option *op, const char *val)
{
{
	char *op_val;
	char *op_val;


@@ -111,7 +111,7 @@ static int update_option_value(struct pevent_plugin_option *op, const char *val)
char **traceevent_plugin_list_options(void)
char **traceevent_plugin_list_options(void)
{
{
	struct registered_plugin_options *reg;
	struct registered_plugin_options *reg;
	struct pevent_plugin_option *op;
	struct tep_plugin_option *op;
	char **list = NULL;
	char **list = NULL;
	char *name;
	char *name;
	int count = 0;
	int count = 0;
@@ -163,7 +163,7 @@ void traceevent_plugin_free_options_list(char **list)
}
}


static int
static int
update_option(const char *file, struct pevent_plugin_option *option)
update_option(const char *file, struct tep_plugin_option *option)
{
{
	struct trace_plugin_options *op;
	struct trace_plugin_options *op;
	char *plugin;
	char *plugin;
@@ -222,7 +222,7 @@ update_option(const char *file, struct pevent_plugin_option *option)
 * Sets the options with the values that have been added by user.
 * Sets the options with the values that have been added by user.
 */
 */
int traceevent_plugin_add_options(const char *name,
int traceevent_plugin_add_options(const char *name,
				  struct pevent_plugin_option *options)
				  struct tep_plugin_option *options)
{
{
	struct registered_plugin_options *reg;
	struct registered_plugin_options *reg;


@@ -244,7 +244,7 @@ int traceevent_plugin_add_options(const char *name,
 * traceevent_plugin_remove_options - remove plugin options that were registered
 * traceevent_plugin_remove_options - remove plugin options that were registered
 * @options: Options to removed that were registered with traceevent_plugin_add_options
 * @options: Options to removed that were registered with traceevent_plugin_add_options
 */
 */
void traceevent_plugin_remove_options(struct pevent_plugin_option *options)
void traceevent_plugin_remove_options(struct tep_plugin_option *options)
{
{
	struct registered_plugin_options **last;
	struct registered_plugin_options **last;
	struct registered_plugin_options *reg;
	struct registered_plugin_options *reg;
@@ -285,7 +285,7 @@ load_plugin(struct tep_handle *pevent, const char *path,
	    const char *file, void *data)
	    const char *file, void *data)
{
{
	struct plugin_list **plugin_list = data;
	struct plugin_list **plugin_list = data;
	pevent_plugin_load_func func;
	tep_plugin_load_func func;
	struct plugin_list *list;
	struct plugin_list *list;
	const char *alias;
	const char *alias;
	char *plugin;
	char *plugin;
@@ -305,14 +305,14 @@ load_plugin(struct tep_handle *pevent, const char *path,
		goto out_free;
		goto out_free;
	}
	}


	alias = dlsym(handle, PEVENT_PLUGIN_ALIAS_NAME);
	alias = dlsym(handle, TEP_PLUGIN_ALIAS_NAME);
	if (!alias)
	if (!alias)
		alias = file;
		alias = file;


	func = dlsym(handle, PEVENT_PLUGIN_LOADER_NAME);
	func = dlsym(handle, TEP_PLUGIN_LOADER_NAME);
	if (!func) {
	if (!func) {
		warning("could not find func '%s' in plugin '%s'\n%s\n",
		warning("could not find func '%s' in plugin '%s'\n%s\n",
			PEVENT_PLUGIN_LOADER_NAME, plugin, dlerror());
			TEP_PLUGIN_LOADER_NAME, plugin, dlerror());
		goto out_free;
		goto out_free;
	}
	}


@@ -442,13 +442,13 @@ traceevent_load_plugins(struct tep_handle *pevent)
void
void
traceevent_unload_plugins(struct plugin_list *plugin_list, struct tep_handle *pevent)
traceevent_unload_plugins(struct plugin_list *plugin_list, struct tep_handle *pevent)
{
{
	pevent_plugin_unload_func func;
	tep_plugin_unload_func func;
	struct plugin_list *list;
	struct plugin_list *list;


	while (plugin_list) {
	while (plugin_list) {
		list = plugin_list;
		list = plugin_list;
		plugin_list = list->next;
		plugin_list = list->next;
		func = dlsym(list->handle, PEVENT_PLUGIN_UNLOADER_NAME);
		func = dlsym(list->handle, TEP_PLUGIN_UNLOADER_NAME);
		if (func)
		if (func)
			func(pevent);
			func(pevent);
		dlclose(list->handle);
		dlclose(list->handle);
+2 −2
Original line number Original line Diff line number Diff line
@@ -25,7 +25,7 @@ process___le16_to_cpup(struct trace_seq *s, unsigned long long *args)
	return val ? (long long) le16toh(*val) : 0;
	return val ? (long long) le16toh(*val) : 0;
}
}


int PEVENT_PLUGIN_LOADER(struct tep_handle *pevent)
int TEP_PLUGIN_LOADER(struct tep_handle *pevent)
{
{
	pevent_register_print_function(pevent,
	pevent_register_print_function(pevent,
				       process___le16_to_cpup,
				       process___le16_to_cpup,
@@ -36,7 +36,7 @@ int PEVENT_PLUGIN_LOADER(struct tep_handle *pevent)
	return 0;
	return 0;
}
}


void PEVENT_PLUGIN_UNLOADER(struct tep_handle *pevent)
void TEP_PLUGIN_UNLOADER(struct tep_handle *pevent)
{
{
	pevent_unregister_print_function(pevent, process___le16_to_cpup,
	pevent_unregister_print_function(pevent, process___le16_to_cpup,
					 "__le16_to_cpup");
					 "__le16_to_cpup");
+5 −5
Original line number Original line Diff line number Diff line
@@ -33,7 +33,7 @@ static int cpus = -1;


#define STK_BLK 10
#define STK_BLK 10


struct pevent_plugin_option plugin_options[] =
struct tep_plugin_option plugin_options[] =
{
{
	{
	{
		.name = "parent",
		.name = "parent",
@@ -53,8 +53,8 @@ struct pevent_plugin_option plugin_options[] =
	}
	}
};
};


static struct pevent_plugin_option *ftrace_parent = &plugin_options[0];
static struct tep_plugin_option *ftrace_parent = &plugin_options[0];
static struct pevent_plugin_option *ftrace_indent = &plugin_options[1];
static struct tep_plugin_option *ftrace_indent = &plugin_options[1];


static void add_child(struct func_stack *stack, const char *child, int pos)
static void add_child(struct func_stack *stack, const char *child, int pos)
{
{
@@ -163,7 +163,7 @@ static int function_handler(struct trace_seq *s, struct tep_record *record,
	return 0;
	return 0;
}
}


int PEVENT_PLUGIN_LOADER(struct tep_handle *pevent)
int TEP_PLUGIN_LOADER(struct tep_handle *pevent)
{
{
	pevent_register_event_handler(pevent, -1, "ftrace", "function",
	pevent_register_event_handler(pevent, -1, "ftrace", "function",
				      function_handler, NULL);
				      function_handler, NULL);
@@ -173,7 +173,7 @@ int PEVENT_PLUGIN_LOADER(struct tep_handle *pevent)
	return 0;
	return 0;
}
}


void PEVENT_PLUGIN_UNLOADER(struct tep_handle *pevent)
void TEP_PLUGIN_UNLOADER(struct tep_handle *pevent)
{
{
	int i, x;
	int i, x;


Loading