Merge branch 'tip/perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace into perf/core
Pull ftrace robustization fixes from Steve Rostedt. Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
commit
4983955c04
3 changed files with 6 additions and 7 deletions
|
@ -207,6 +207,9 @@ struct ftrace_event_call {
|
||||||
* bit 1: enabled
|
* bit 1: enabled
|
||||||
* bit 2: filter_active
|
* bit 2: filter_active
|
||||||
* bit 3: enabled cmd record
|
* bit 3: enabled cmd record
|
||||||
|
* bit 4: allow trace by non root (cap any)
|
||||||
|
* bit 5: failed to apply filter
|
||||||
|
* bit 6: ftrace internal event (do not enable)
|
||||||
*
|
*
|
||||||
* Changes to flags must hold the event_mutex.
|
* Changes to flags must hold the event_mutex.
|
||||||
*
|
*
|
||||||
|
|
|
@ -312,7 +312,7 @@ static int remove_ftrace_list_ops(struct ftrace_ops **list,
|
||||||
|
|
||||||
static int __register_ftrace_function(struct ftrace_ops *ops)
|
static int __register_ftrace_function(struct ftrace_ops *ops)
|
||||||
{
|
{
|
||||||
if (ftrace_disabled)
|
if (unlikely(ftrace_disabled))
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
|
||||||
if (FTRACE_WARN_ON(ops == &global_ops))
|
if (FTRACE_WARN_ON(ops == &global_ops))
|
||||||
|
@ -4299,16 +4299,12 @@ int register_ftrace_function(struct ftrace_ops *ops)
|
||||||
|
|
||||||
mutex_lock(&ftrace_lock);
|
mutex_lock(&ftrace_lock);
|
||||||
|
|
||||||
if (unlikely(ftrace_disabled))
|
|
||||||
goto out_unlock;
|
|
||||||
|
|
||||||
ret = __register_ftrace_function(ops);
|
ret = __register_ftrace_function(ops);
|
||||||
if (!ret)
|
if (!ret)
|
||||||
ret = ftrace_startup(ops, 0);
|
ret = ftrace_startup(ops, 0);
|
||||||
|
|
||||||
|
|
||||||
out_unlock:
|
|
||||||
mutex_unlock(&ftrace_lock);
|
mutex_unlock(&ftrace_lock);
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(register_ftrace_function);
|
EXPORT_SYMBOL_GPL(register_ftrace_function);
|
||||||
|
|
|
@ -1325,4 +1325,4 @@ __init static int init_events(void)
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
device_initcall(init_events);
|
early_initcall(init_events);
|
||||||
|
|
Loading…
Add table
Reference in a new issue