[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <cover.1560868106.git.naveen.n.rao@linux.vnet.ibm.com>
Date: Tue, 18 Jun 2019 20:16:59 +0530
From: "Naveen N. Rao" <naveen.n.rao@...ux.vnet.ibm.com>
To: Michael Ellerman <mpe@...erman.id.au>,
Steven Rostedt <rostedt@...dmis.org>,
Masami Hiramatsu <mhiramat@...nel.org>,
Ingo Molnar <mingo@...nel.org>,
Nicholas Piggin <npiggin@...il.com>
Cc: <linuxppc-dev@...ts.ozlabs.org>, <linux-kernel@...r.kernel.org>
Subject: [PATCH 0/7] powerpc/ftrace: Patch out -mprofile-kernel instructions
Changes since RFC:
- Patches 1 and 2: No changes
- Patch 3: rename function to ftrace_replace_code_rec() to signify that
it acts on a ftrace record.
- Patch 4: numerous small changes, including those suggested by Nick
Piggin.
- Patch 4: additionally handle scenario where __ftrace_make_call() can
be invoked without having called __ftrace_make_call_prep(), when a
kernel module is loaded while function tracing is active.
- Patch 5 to 7: new, to have ftrace claim ownership of two instructions,
and to have kprobes work properly with this.
--
On powerpc64, -mprofile-kernel results in two instructions being
emitted: 'mflr r0' and 'bl _mcount'. So far, we were only nop'ing out
the branch to _mcount(). This series implements an approach to also nop
out the preceding mflr.
- Naveen
Naveen N. Rao (7):
ftrace: Expose flags used for ftrace_replace_code()
x86/ftrace: Fix use of flags in ftrace_replace_code()
ftrace: Expose __ftrace_replace_code()
powerpc/ftrace: Additionally nop out the preceding mflr with
-mprofile-kernel
powerpc/ftrace: Update ftrace_location() for powerpc -mprofile-kernel
kprobes/ftrace: Use ftrace_location() when [dis]arming probes
powerpc/kprobes: Allow probing on any ftrace address
arch/powerpc/kernel/kprobes-ftrace.c | 30 +++
arch/powerpc/kernel/trace/ftrace.c | 272 ++++++++++++++++++++++++---
arch/x86/kernel/ftrace.c | 3 +-
include/linux/ftrace.h | 7 +
kernel/kprobes.c | 10 +-
kernel/trace/ftrace.c | 17 +-
6 files changed, 300 insertions(+), 39 deletions(-)
--
2.22.0
Powered by blists - more mailing lists