x86/ftrace: Clean up ftrace_regs_caller
commitff04b440d2d645fd8a5b3385b1b2e4d19d3fe746
authorSteven Rostedt (VMware) <rostedt@goodmis.org>
Thu, 23 Mar 2017 14:33:51 +0000 (23 10:33 -0400)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 24 Mar 2017 09:14:07 +0000 (24 10:14 +0100)
tree898b5ce8e4829b9dea2eb7ca772300937bbbbc36
parente6928e58d4d4a02f88838945f792c107623314ac
x86/ftrace: Clean up ftrace_regs_caller

When ftrace_regs_caller was created, it was designed to preserve flags as
much as possible as it needed to act just like a breakpoint triggered on the
same location. But the design is over complicated as it treated all
operations as modifying flags. But push, mov and lea do not modify flags.
This means the code can become more simplified by allowing flags to be
stored further down.

Making ftrace_regs_caller simpler will also be useful in implementing fentry
logic.

Suggested-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Reviewed-by: Masami Hiramatsu <mhiramat@kernel.org>
Reviewed-by: Josh Poimboeuf <jpoimboe@redhat.com>
Reviewed-by: Ingo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Andrew Morton <akpm@linux-foundation.org>
Link: http://lkml.kernel.org/r/20170316135328.36123c3e@gandalf.local.home
Link: http://lkml.kernel.org/r/20170323143445.917292592@goodmis.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/kernel/ftrace_32.S