public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org
Cc: Ingo Molnar <mingo@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: [for-next][PATCH 18/21] tracing: Move all function tracing configs together
Date: Thu, 30 Jan 2020 09:48:01 -0500	[thread overview]
Message-ID: <20200130144812.928328487@goodmis.org> (raw)
In-Reply-To: 20200130144743.527378179@goodmis.org

From: "Steven Rostedt (VMware)" <rostedt@goodmis.org>

The features that depend on the function tracer were spread out through the
tracing menu, pull them together as it is easier to manage.

Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
 kernel/trace/Kconfig | 142 +++++++++++++++++++++----------------------
 1 file changed, 71 insertions(+), 71 deletions(-)

diff --git a/kernel/trace/Kconfig b/kernel/trace/Kconfig
index 4484e783f68d..32fcbc00753b 100644
--- a/kernel/trace/Kconfig
+++ b/kernel/trace/Kconfig
@@ -172,6 +172,77 @@ config FUNCTION_GRAPH_TRACER
 	  the return value. This is done by setting the current return
 	  address on the current task structure into a stack of calls.
 
+config DYNAMIC_FTRACE
+	bool "enable/disable function tracing dynamically"
+	depends on FUNCTION_TRACER
+	depends on HAVE_DYNAMIC_FTRACE
+	default y
+	help
+	  This option will modify all the calls to function tracing
+	  dynamically (will patch them out of the binary image and
+	  replace them with a No-Op instruction) on boot up. During
+	  compile time, a table is made of all the locations that ftrace
+	  can function trace, and this table is linked into the kernel
+	  image. When this is enabled, functions can be individually
+	  enabled, and the functions not enabled will not affect
+	  performance of the system.
+
+	  See the files in /sys/kernel/debug/tracing:
+	    available_filter_functions
+	    set_ftrace_filter
+	    set_ftrace_notrace
+
+	  This way a CONFIG_FUNCTION_TRACER kernel is slightly larger, but
+	  otherwise has native performance as long as no tracing is active.
+
+config DYNAMIC_FTRACE_WITH_REGS
+	def_bool y
+	depends on DYNAMIC_FTRACE
+	depends on HAVE_DYNAMIC_FTRACE_WITH_REGS
+
+config DYNAMIC_FTRACE_WITH_DIRECT_CALLS
+	def_bool y
+	depends on DYNAMIC_FTRACE
+	depends on HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS
+
+config FUNCTION_PROFILER
+	bool "Kernel function profiler"
+	depends on FUNCTION_TRACER
+	default n
+	help
+	  This option enables the kernel function profiler. A file is created
+	  in debugfs called function_profile_enabled which defaults to zero.
+	  When a 1 is echoed into this file profiling begins, and when a
+	  zero is entered, profiling stops. A "functions" file is created in
+	  the trace_stat directory; this file shows the list of functions that
+	  have been hit and their counters.
+
+	  If in doubt, say N.
+
+config STACK_TRACER
+	bool "Trace max stack"
+	depends on HAVE_FUNCTION_TRACER
+	select FUNCTION_TRACER
+	select STACKTRACE
+	select KALLSYMS
+	help
+	  This special tracer records the maximum stack footprint of the
+	  kernel and displays it in /sys/kernel/debug/tracing/stack_trace.
+
+	  This tracer works by hooking into every function call that the
+	  kernel executes, and keeping a maximum stack depth value and
+	  stack-trace saved.  If this is configured with DYNAMIC_FTRACE
+	  then it will not have any overhead while the stack tracer
+	  is disabled.
+
+	  To enable the stack tracer on bootup, pass in 'stacktrace'
+	  on the kernel command line.
+
+	  The stack tracer can also be enabled or disabled via the
+	  sysctl kernel.stack_tracer_enabled
+
+	  Say N if unsure.
+
 config TRACE_PREEMPT_TOGGLE
 	bool
 	help
@@ -410,30 +481,6 @@ config BRANCH_TRACER
 
 	  Say N if unsure.
 
-config STACK_TRACER
-	bool "Trace max stack"
-	depends on HAVE_FUNCTION_TRACER
-	select FUNCTION_TRACER
-	select STACKTRACE
-	select KALLSYMS
-	help
-	  This special tracer records the maximum stack footprint of the
-	  kernel and displays it in /sys/kernel/debug/tracing/stack_trace.
-
-	  This tracer works by hooking into every function call that the
-	  kernel executes, and keeping a maximum stack depth value and
-	  stack-trace saved.  If this is configured with DYNAMIC_FTRACE
-	  then it will not have any overhead while the stack tracer
-	  is disabled.
-
-	  To enable the stack tracer on bootup, pass in 'stacktrace'
-	  on the kernel command line.
-
-	  The stack tracer can also be enabled or disabled via the
-	  sysctl kernel.stack_tracer_enabled
-
-	  Say N if unsure.
-
 config BLK_DEV_IO_TRACE
 	bool "Support for tracing block IO actions"
 	depends on SYSFS
@@ -531,53 +578,6 @@ config DYNAMIC_EVENTS
 config PROBE_EVENTS
 	def_bool n
 
-config DYNAMIC_FTRACE
-	bool "enable/disable function tracing dynamically"
-	depends on FUNCTION_TRACER
-	depends on HAVE_DYNAMIC_FTRACE
-	default y
-	help
-	  This option will modify all the calls to function tracing
-	  dynamically (will patch them out of the binary image and
-	  replace them with a No-Op instruction) on boot up. During
-	  compile time, a table is made of all the locations that ftrace
-	  can function trace, and this table is linked into the kernel
-	  image. When this is enabled, functions can be individually
-	  enabled, and the functions not enabled will not affect
-	  performance of the system.
-
-	  See the files in /sys/kernel/debug/tracing:
-	    available_filter_functions
-	    set_ftrace_filter
-	    set_ftrace_notrace
-
-	  This way a CONFIG_FUNCTION_TRACER kernel is slightly larger, but
-	  otherwise has native performance as long as no tracing is active.
-
-config DYNAMIC_FTRACE_WITH_REGS
-	def_bool y
-	depends on DYNAMIC_FTRACE
-	depends on HAVE_DYNAMIC_FTRACE_WITH_REGS
-
-config DYNAMIC_FTRACE_WITH_DIRECT_CALLS
-	def_bool y
-	depends on DYNAMIC_FTRACE
-	depends on HAVE_DYNAMIC_FTRACE_WITH_DIRECT_CALLS
-
-config FUNCTION_PROFILER
-	bool "Kernel function profiler"
-	depends on FUNCTION_TRACER
-	default n
-	help
-	  This option enables the kernel function profiler. A file is created
-	  in debugfs called function_profile_enabled which defaults to zero.
-	  When a 1 is echoed into this file profiling begins, and when a
-	  zero is entered, profiling stops. A "functions" file is created in
-	  the trace_stat directory; this file shows the list of functions that
-	  have been hit and their counters.
-
-	  If in doubt, say N.
-
 config BPF_KPROBE_OVERRIDE
 	bool "Enable BPF programs to override a kprobed function"
 	depends on BPF_EVENTS
-- 
2.24.1



  parent reply	other threads:[~2020-01-30 14:48 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-30 14:47 [for-next][PATCH 00/21] tracing: Some more last minute updates for 5.6 Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 01/21] tracing/boot: Include required headers and sort it alphabetically Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 02/21] tracing/boot: Move external function declarations to kernel/trace/trace.h Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 03/21] tracing: Fix sched switch start/stop refcount racy updates Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 04/21] ftrace: fpid_next() should increase position index Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 05/21] tracing: eval_map_next() should always " Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 06/21] trigger_next should " Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 07/21] tracing: Add trace_array_find/_get() to find instance trace arrays Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 08/21] tracing: Add trace_get/put_event_file() Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 09/21] tracing: Add synth_event_delete() Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 10/21] tracing: Add dynamic event command creation interface Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 11/21] tracing: Add synthetic event command generation functions Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 12/21] tracing: Add synth_event_trace() and related functions Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 13/21] tracing: Add synth event generation test module Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 14/21] tracing: Add kprobe event command generation functions Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 15/21] tracing: Change trace_boot to use kprobe_event interface Steven Rostedt
2020-01-30 14:47 ` [for-next][PATCH 16/21] tracing: Add kprobe event command generation test module Steven Rostedt
2020-01-30 14:48 ` [for-next][PATCH 17/21] tracing: Documentation for in-kernel synthetic event API Steven Rostedt
2020-01-30 14:48 ` Steven Rostedt [this message]
2020-01-30 14:48 ` [for-next][PATCH 19/21] tracing: Move tracing test module configs together Steven Rostedt
2020-01-30 14:48 ` [for-next][PATCH 20/21] tracing: Move mmio tracer config up with the other tracers Steven Rostedt
2020-01-30 14:48 ` [for-next][PATCH 21/21] tracing: Move tracing selftests to bottom of menu Steven Rostedt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200130144812.928328487@goodmis.org \
    --to=rostedt@goodmis.org \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox