diff options
| author | Ingo Molnar <mingo@kernel.org> | 2016-04-13 08:57:03 +0200 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2016-04-13 08:57:03 +0200 |
| commit | 889fac6d67d46a5e781c08fb26fec9016db1c307 (patch) | |
| tree | 7e01d04928f7ce343afff5b77ba13c2f3d083326 /kernel/trace/trace_functions.c | |
| parent | dad38ca64a252144b4ccdfe9730a3fe2b7c61957 (diff) | |
| parent | bf16200689118d19de1b8d2a3c314fc21f5dc7bb (diff) | |
| download | linux-889fac6d67d46a5e781c08fb26fec9016db1c307.tar.gz linux-889fac6d67d46a5e781c08fb26fec9016db1c307.tar.bz2 linux-889fac6d67d46a5e781c08fb26fec9016db1c307.zip | |
Merge tag 'v4.6-rc3' into perf/core, to refresh the tree
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/trace/trace_functions.c')
| -rw-r--r-- | kernel/trace/trace_functions.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/trace/trace_functions.c b/kernel/trace/trace_functions.c index fcd41a166405..5a095c2e4b69 100644 --- a/kernel/trace/trace_functions.c +++ b/kernel/trace/trace_functions.c @@ -219,6 +219,8 @@ static void tracing_stop_function_trace(struct trace_array *tr) unregister_ftrace_function(tr->ops); } +static struct tracer function_trace; + static int func_set_flag(struct trace_array *tr, u32 old_flags, u32 bit, int set) { @@ -228,6 +230,10 @@ func_set_flag(struct trace_array *tr, u32 old_flags, u32 bit, int set) if (!!set == !!(func_flags.val & TRACE_FUNC_OPT_STACK)) break; + /* We can change this flag when not running. */ + if (tr->current_trace != &function_trace) + break; + unregister_ftrace_function(tr->ops); if (set) { |
