[RESEND PATCH 1/4] ppc64 FTRACE_WITH_REGS implementation

Steven Rostedt rostedt at goodmis.org
Fri Jun 19 23:26:25 AEST 2015


On Thu, 18 Jun 2015 18:21:07 +0200
Torsten Duwe <duwe at lst.de> wrote:

> Implement FTRACE_WITH_REGS for powerpc64, on ELF ABI v2.
> Initial work started by Vojtech Pavlik, used with permission.
> 
>   * arch/powerpc/kernel/entry_64.S:
>     - enhance _mcount with a stub to test (ftrace_trace_function == &ftrace_stub)
>       as suggested in Documentation/trace/ftrace-design.txt
>       (for reference only, patched out at runtime)
>     - Implement an effective ftrace_caller that works from within the kernel
>       binary as well as from modules.
>   * arch/powerpc/kernel/ftrace.c:
>     - be prepared to deal with ppc64 ELV ABI v2, especially calls to _mcount
>       that result from gcc -mprofile-kernel
>   * arch/powerpc/kernel/module_64.c:
>     - do not save the TOC pointer on the trampoline when the destination
>       is ftrace_caller. This trampoline jump happens from a function prologue
>       before a new stack frame is set up, so bad things may happen otherwise...
>     - relax is_module_trampoline() to recognise the modified trampoline.
> 
> Signed-off-by: Torsten Duwe <duwe at suse.de>
> --

FYI, the standard notation after the change log is '---' not '--'. That
way git will chop off this from the change log. When I did a git am -s
on this patch I had:

    Signed-off-by: Torsten Duwe <duwe at suse.de>
    --
     arch/powerpc/include/asm/ftrace.h |    5 +
     arch/powerpc/kernel/entry_64.S    |  112 +++++++++++++++++++++++++++++++-------
     arch/powerpc/kernel/ftrace.c      |   67 ++++++++++++++++++++--
     arch/powerpc/kernel/module_64.c   |   33 ++++++++++-
     4 files changed, 186 insertions(+), 31 deletions(-)
    --
    Signed-off-by: Steven Rostedt <rostedt at goodmis.org>

-- Steve


>  arch/powerpc/include/asm/ftrace.h |    5 +
>  arch/powerpc/kernel/entry_64.S    |  112 +++++++++++++++++++++++++++++++-------
>  arch/powerpc/kernel/ftrace.c      |   67 ++++++++++++++++++++--
>  arch/powerpc/kernel/module_64.c   |   33 ++++++++++-
>  4 files changed, 186 insertions(+), 31 deletions(-)
> --
> diff --git a/arch/powerpc/include/asm/ftrace.h b/arch/powerpc/include/asm/ftrace.h
> index e366187..6111191 100644
> --- a/arch/powerpc/include/asm/ftrace.h
> +++ b/arch/powerpc/include/asm/ftrace.h


More information about the Linuxppc-dev mailing list