[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <tip-5cc718b9dad682329a60e73547c6e708faa5bbe4@git.kernel.org>
Date: Tue, 16 Mar 2010 14:47:53 GMT
From: tip-bot for Masami Hiramatsu <mhiramat@...hat.com>
To: linux-tip-commits@...r.kernel.org
Cc: acme@...hat.com, mingo@...hat.com, a.p.zijlstra@...llo.nl,
mail@...terries.net, efault@....de, fweisbec@...il.com,
dle-develop@...ts.sourceforge.net, hirofumi@...l.parknet.co.jp,
tglx@...utronix.de, mhiramat@...hat.com,
systemtap@...rces.redhat.com, hpa@...or.com, paulus@...ba.org,
linux-kernel@...r.kernel.org, ananth@...ibm.com, mingo@...e.hu
Subject: [tip:perf/core] kprobes: Hide CONFIG_OPTPROBES and set if arch supports optimized kprobes
Commit-ID: 5cc718b9dad682329a60e73547c6e708faa5bbe4
Gitweb: http://git.kernel.org/tip/5cc718b9dad682329a60e73547c6e708faa5bbe4
Author: Masami Hiramatsu <mhiramat@...hat.com>
AuthorDate: Mon, 15 Mar 2010 13:00:54 -0400
Committer: Ingo Molnar <mingo@...e.hu>
CommitDate: Tue, 16 Mar 2010 11:07:23 +0100
kprobes: Hide CONFIG_OPTPROBES and set if arch supports optimized kprobes
Hide CONFIG_OPTPROBES and set if the arch supports optimized
kprobes (IOW, HAVE_OPTPROBES=y), since this option doesn't
change the major behavior of kprobes, and workarounds for minor
changes are documented.
Signed-off-by: Masami Hiramatsu <mhiramat@...hat.com>
Cc: systemtap <systemtap@...rces.redhat.com>
Cc: DLE <dle-develop@...ts.sourceforge.net>
Cc: Dieter Ries <mail@...terries.net>
Cc: Ananth N Mavinakayanahalli <ananth@...ibm.com>
Cc: OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>
Cc: Mike Galbraith <efault@....de>
Cc: Paul Mackerras <paulus@...ba.org>
Cc: Arnaldo Carvalho de Melo <acme@...hat.com>
Cc: Frederic Weisbecker <fweisbec@...il.com>
LKML-Reference: <20100315170054.31593.3153.stgit@...alhost6.localdomain6>
Signed-off-by: Ingo Molnar <mingo@...e.hu>
---
Documentation/kprobes.txt | 10 ++--------
arch/Kconfig | 9 ++-------
2 files changed, 4 insertions(+), 15 deletions(-)
diff --git a/Documentation/kprobes.txt b/Documentation/kprobes.txt
index 2f9115c..61c291c 100644
--- a/Documentation/kprobes.txt
+++ b/Documentation/kprobes.txt
@@ -165,8 +165,8 @@ the user entry_handler invocation is also skipped.
1.4 How Does Jump Optimization Work?
-If you configured your kernel with CONFIG_OPTPROBES=y (currently
-this option is supported on x86/x86-64, non-preemptive kernel) and
+If your kernel is built with CONFIG_OPTPROBES=y (currently this flag
+is automatically set 'y' on x86/x86-64, non-preemptive kernel) and
the "debug.kprobes_optimization" kernel parameter is set to 1 (see
sysctl(8)), Kprobes tries to reduce probe-hit overhead by using a jump
instruction instead of a breakpoint instruction at each probepoint.
@@ -271,8 +271,6 @@ tweak the kernel's execution path, you need to suppress optimization,
using one of the following techniques:
- Specify an empty function for the kprobe's post_handler or break_handler.
or
-- Config CONFIG_OPTPROBES=n.
- or
- Execute 'sysctl -w debug.kprobes_optimization=n'
2. Architectures Supported
@@ -307,10 +305,6 @@ it useful to "Compile the kernel with debug info" (CONFIG_DEBUG_INFO),
so you can use "objdump -d -l vmlinux" to see the source-to-object
code mapping.
-If you want to reduce probing overhead, set "Kprobes jump optimization
-support" (CONFIG_OPTPROBES) to "y". You can find this option under the
-"Kprobes" line.
-
4. API Reference
The Kprobes API includes a "register" function and an "unregister"
diff --git a/arch/Kconfig b/arch/Kconfig
index e5eb133..f06010f 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -42,15 +42,10 @@ config KPROBES
If in doubt, say "N".
config OPTPROBES
- bool "Kprobes jump optimization support (EXPERIMENTAL)"
- default y
- depends on KPROBES
+ def_bool y
+ depends on KPROBES && HAVE_OPTPROBES
depends on !PREEMPT
- depends on HAVE_OPTPROBES
select KALLSYMS_ALL
- help
- This option will allow kprobes to optimize breakpoint to
- a jump for reducing its overhead.
config HAVE_EFFICIENT_UNALIGNED_ACCESS
bool
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists