mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
tools lib traceevent: Add pevent_unregister_print_function()
When a plugin unloaded it needs to unregister its print handler from pevent. So add an unregister function to do it. Signed-off-by: Namhyung Kim <[email protected]> Reviewed-by: Jiri Olsa <[email protected]> Acked-by: Steven Rostedt <[email protected]> Cc: Frederic Weisbecker <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Steven Rostedt <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
This commit is contained in:
parent
ad13701d49
commit
20c7e5abbd
2 changed files with 25 additions and 0 deletions
|
|
@ -5560,6 +5560,29 @@ int pevent_register_print_function(struct pevent *pevent,
|
|||
return ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* pevent_unregister_print_function - unregister a helper function
|
||||
* @pevent: the handle to the pevent
|
||||
* @func: the function to process the helper function
|
||||
* @name: the name of the helper function
|
||||
*
|
||||
* This function removes existing print handler for function @name.
|
||||
*
|
||||
* Returns 0 if the handler was removed successully, -1 otherwise.
|
||||
*/
|
||||
int pevent_unregister_print_function(struct pevent *pevent,
|
||||
pevent_func_handler func, char *name)
|
||||
{
|
||||
struct pevent_function_handler *func_handle;
|
||||
|
||||
func_handle = find_func_handler(pevent, name);
|
||||
if (func_handle && func_handle->func == func) {
|
||||
remove_func_handler(pevent, name);
|
||||
return 0;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
static struct event_format *pevent_search_event(struct pevent *pevent, int id,
|
||||
const char *sys_name,
|
||||
const char *event_name)
|
||||
|
|
|
|||
|
|
@ -631,6 +631,8 @@ int pevent_register_print_function(struct pevent *pevent,
|
|||
pevent_func_handler func,
|
||||
enum pevent_func_arg_type ret_type,
|
||||
char *name, ...);
|
||||
int pevent_unregister_print_function(struct pevent *pevent,
|
||||
pevent_func_handler func, char *name);
|
||||
|
||||
struct format_field *pevent_find_common_field(struct event_format *event, const char *name);
|
||||
struct format_field *pevent_find_field(struct event_format *event, const char *name);
|
||||
|
|
|
|||
Loading…
Reference in a new issue