projects
/
platform
/
adaptation
/
renesas_rcar
/
renesas_kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
timer: Fix lock inversion between hrtimer_bases.lock and scheduler locks
[platform/adaptation/renesas_rcar/renesas_kernel.git]
/
kernel
/
trace
/
trace_events.c
diff --git
a/kernel/trace/trace_events.c
b/kernel/trace/trace_events.c
index
e71ffd4
..
e4c4efc
100644
(file)
--- a/
kernel/trace/trace_events.c
+++ b/
kernel/trace/trace_events.c
@@
-27,12
+27,6
@@
DEFINE_MUTEX(event_mutex);
DEFINE_MUTEX(event_mutex);
-DEFINE_MUTEX(event_storage_mutex);
-EXPORT_SYMBOL_GPL(event_storage_mutex);
-
-char event_storage[EVENT_STORAGE_SIZE];
-EXPORT_SYMBOL_GPL(event_storage);
-
LIST_HEAD(ftrace_events);
static LIST_HEAD(ftrace_common_fields);
LIST_HEAD(ftrace_events);
static LIST_HEAD(ftrace_common_fields);
@@
-445,6
+439,7
@@
static void remove_event_file_dir(struct ftrace_event_file *file)
list_del(&file->list);
remove_subsystem(file->system);
list_del(&file->list);
remove_subsystem(file->system);
+ free_event_filter(file->filter);
kmem_cache_free(file_cachep, file);
}
kmem_cache_free(file_cachep, file);
}
@@
-1777,6
+1772,16
@@
static void trace_module_add_events(struct module *mod)
{
struct ftrace_event_call **call, **start, **end;
{
struct ftrace_event_call **call, **start, **end;
+ if (!mod->num_trace_events)
+ return;
+
+ /* Don't add infrastructure for mods without tracepoints */
+ if (trace_module_has_bad_taint(mod)) {
+ pr_err("%s: module has bad taint, not creating trace events\n",
+ mod->name);
+ return;
+ }
+
start = mod->trace_events;
end = mod->trace_events + mod->num_trace_events;
start = mod->trace_events;
end = mod->trace_events + mod->num_trace_events;