aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorSteven Rostedt (VMware) <rostedt@goodmis.org>2017-07-11 19:21:04 -0400
committerSteven Rostedt (VMware) <rostedt@goodmis.org>2017-07-11 19:21:04 -0400
commitbbd1d27d863d5c0acee65ecd0c2e34035e1df5ea (patch)
tree51b0930471b32f25996e5968b4cfc2428d3cd00a /kernel
parentdc8d387210e3e2ab294031e8f6542329bc9141c4 (diff)
tracing: Do note expose stack_trace_filter without DYNAMIC_FTRACE
The "stack_trace_filter" file only makes sense if DYNAMIC_FTRACE is configured in. If it is not, then the user can not filter any functions. Not only that, the open function causes warnings when DYNAMIC_FTRACE is not set. Link: http://lkml.kernel.org/r/20170710110521.600806-1-arnd@arndb.de Reported-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/trace/trace_stack.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/kernel/trace/trace_stack.c b/kernel/trace/trace_stack.c
index b4a751e8f9d6..a4df67cbc711 100644
--- a/kernel/trace/trace_stack.c
+++ b/kernel/trace/trace_stack.c
@@ -406,6 +406,8 @@ static const struct file_operations stack_trace_fops = {
406 .release = seq_release, 406 .release = seq_release,
407}; 407};
408 408
409#ifdef CONFIG_DYNAMIC_FTRACE
410
409static int 411static int
410stack_trace_filter_open(struct inode *inode, struct file *file) 412stack_trace_filter_open(struct inode *inode, struct file *file)
411{ 413{
@@ -423,6 +425,8 @@ static const struct file_operations stack_trace_filter_fops = {
423 .release = ftrace_regex_release, 425 .release = ftrace_regex_release,
424}; 426};
425 427
428#endif /* CONFIG_DYNAMIC_FTRACE */
429
426int 430int
427stack_trace_sysctl(struct ctl_table *table, int write, 431stack_trace_sysctl(struct ctl_table *table, int write,
428 void __user *buffer, size_t *lenp, 432 void __user *buffer, size_t *lenp,
@@ -477,8 +481,10 @@ static __init int stack_trace_init(void)
477 trace_create_file("stack_trace", 0444, d_tracer, 481 trace_create_file("stack_trace", 0444, d_tracer,
478 NULL, &stack_trace_fops); 482 NULL, &stack_trace_fops);
479 483
484#ifdef CONFIG_DYNAMIC_FTRACE
480 trace_create_file("stack_trace_filter", 0444, d_tracer, 485 trace_create_file("stack_trace_filter", 0444, d_tracer,
481 &trace_ops, &stack_trace_filter_fops); 486 &trace_ops, &stack_trace_filter_fops);
487#endif
482 488
483 if (stack_trace_filter_buf[0]) 489 if (stack_trace_filter_buf[0])
484 ftrace_set_early_filter(&trace_ops, stack_trace_filter_buf, 1); 490 ftrace_set_early_filter(&trace_ops, stack_trace_filter_buf, 1);