[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20120807193845.146666357@goodmis.org>
Date: Tue, 07 Aug 2012 15:38:45 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: linux-kernel@...r.kernel.org
Cc: Ingo Molnar <mingo@...e.hu>,
Andrew Morton <akpm@...ux-foundation.org>,
Thomas Gleixner <tglx@...utronix.de>,
Frederic Weisbecker <fweisbec@...il.com>,
Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Andi Kleen <andi@...stfloor.org>
Subject: [RFC PATCH 0/4] ftrace: Add use of -mfentry for x86_64
This is an RFC patch set that makes gcc use the -mfentry option with
-pg. This will set the ftrace 'hook' to the beginning of the function
and also remove the requirement that -pg enables frame pointers.
This has a couple of benefits (and probably more).
1) removal of the frame pointer requirement makes for smaller and faster code.
2) Having the function trace hook at the beginning of the function instead
of after the frame is set up, gives the function tracing callbacks access
to the parameters. This means that kprobes can take advantage of this.
When a kprobe is set on top of a ftrace hook (nop), it will automatically
use the function tracing callback. This makes it into an 'optimized' probe
as there's no need to hit a breakpoint and trigger the probe that way.
The function tracing code can do the work for it. Note, optimized probes
are only allowed with !PREEMPT, but a ftrace optimize probe is allowed
in any context (another benefit).
This only implements fentry for x86_64.
Steven Rostedt (4):
ftrace: Make recordmcount.c handle __fentry__
ftrace: Add -mfentry to Makefile on function tracer
ftrace: Do not test frame pointers if -mfentry is used
ftrace/x86: Add support for -mfentry to x86_64
----
Makefile | 6 +++++-
arch/x86/Kconfig | 1 +
arch/x86/include/asm/ftrace.h | 7 ++++++-
arch/x86/kernel/entry_64.S | 18 +++++++++++++++++-
arch/x86/kernel/x8664_ksyms_64.c | 6 +++++-
kernel/trace/Kconfig | 5 +++++
kernel/trace/trace_functions_graph.c | 5 ++++-
scripts/recordmcount.h | 4 +++-
8 files changed, 46 insertions(+), 6 deletions(-)
Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)
Powered by blists - more mailing lists