All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 1/5] powerpc: ftrace: minor cleanup
@ 2017-02-21 16:26 Naveen N. Rao
  2017-02-21 16:26 ` [PATCH v2 2/5] powerpc: ftrace: restore LR from pt_regs Naveen N. Rao
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Naveen N. Rao @ 2017-02-21 16:26 UTC (permalink / raw)
  To: Michael Ellerman, Ananth N Mavinakayanahalli, Masami Hiramatsu
  Cc: linux-kernel, linuxppc-dev

Move the stack setup and teardown code to the ftrace_graph_caller().
This way, we don't incur the cost of setting it up unless function graph
is enabled for this function.

Also, remove the extraneous LR restore code after the function graph
stub. LR has previously been restored and neither livepatch_handler()
nor ftrace_graph_caller() return back here.

Signed-off-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
---
 arch/powerpc/kernel/entry_64.S | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/arch/powerpc/kernel/entry_64.S b/arch/powerpc/kernel/entry_64.S
index 6432d4bf08c8..8fd8718722a1 100644
--- a/arch/powerpc/kernel/entry_64.S
+++ b/arch/powerpc/kernel/entry_64.S
@@ -1313,16 +1313,12 @@ ftrace_call:
 #endif
 
 #ifdef CONFIG_FUNCTION_GRAPH_TRACER
-	stdu	r1, -112(r1)
 .globl ftrace_graph_call
 ftrace_graph_call:
 	b	ftrace_graph_stub
 _GLOBAL(ftrace_graph_stub)
-	addi	r1, r1, 112
 #endif
 
-	ld	r0,LRSAVE(r1)	/* restore callee's lr at _mcount site */
-	mtlr	r0
 	bctr			/* jump after _mcount site */
 #endif /* CC_USING_MPROFILE_KERNEL */
 
@@ -1446,6 +1442,7 @@ _GLOBAL(ftrace_stub)
 #ifdef CONFIG_FUNCTION_GRAPH_TRACER
 #ifndef CC_USING_MPROFILE_KERNEL
 _GLOBAL(ftrace_graph_caller)
+	stdu	r1, -112(r1)
 	/* load r4 with local address */
 	ld	r4, 128(r1)
 	subi	r4, r4, MCOUNT_INSN_SIZE
@@ -1471,6 +1468,7 @@ _GLOBAL(ftrace_graph_caller)
 
 #else /* CC_USING_MPROFILE_KERNEL */
 _GLOBAL(ftrace_graph_caller)
+	stdu	r1, -112(r1)
 	/* with -mprofile-kernel, parameter regs are still alive at _mcount */
 	std	r10, 104(r1)
 	std	r9, 96(r1)
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-02-21 16:28 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-21 16:26 [PATCH v2 1/5] powerpc: ftrace: minor cleanup Naveen N. Rao
2017-02-21 16:26 ` [PATCH v2 2/5] powerpc: ftrace: restore LR from pt_regs Naveen N. Rao
2017-02-21 16:26 ` [PATCH v2 3/5] kprobes: Skip preparing optprobe if the probe is ftrace-based Naveen N. Rao
2017-02-21 16:26 ` [PATCH v2 4/5] powerpc: kprobes: add support for KPROBES_ON_FTRACE Naveen N. Rao
2017-02-21 16:26 ` [PATCH v2 5/5] powerpc: kprobes: prefer ftrace when probing function entry Naveen N. Rao

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.