History

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

Steven Rostedt (VMware) committed 9 years ago

Commit bbd1d271 parent dc8d3871 file · +6 −0Browse files

Unified · Split

kernel/trace/trace_stack.c+6−0
@@ -406,6 +406,8 @@ static const struct file_operations stack_trace_fops = { · 405 unmodified lines
406406 .release = seq_release,
407407 };
408408
409+#ifdef CONFIG_DYNAMIC_FTRACE
410+
409411 static int
410412 stack_trace_filter_open(struct inode *inode, struct file *file)
411413 {
@@ -423,6 +425,8 @@ static const struct file_operations stack_trace_filter_fops = { · 11 unmodified lines
423425 .release = ftrace_regex_release,
424426 };
425427
428+#endif /* CONFIG_DYNAMIC_FTRACE */
429+
426430 int
427431 stack_trace_sysctl(struct ctl_table *table, int write,
428432 void __user *buffer, size_t *lenp,
@@ -477,8 +481,10 @@ static __init int stack_trace_init(void) · 48 unmodified lines
477481 trace_create_file("stack_trace", 0444, d_tracer,
478482 NULL, &stack_trace_fops);
479483
484+#ifdef CONFIG_DYNAMIC_FTRACE
480485 trace_create_file("stack_trace_filter", 0444, d_tracer,
481486 &trace_ops, &stack_trace_filter_fops);
487+#endif
482488
483489 if (stack_trace_filter_buf[0])
484490 ftrace_set_early_filter(&trace_ops, stack_trace_filter_buf, 1);