• AKASHI Takahiro's avatar
    arm64: Add ftrace support · 819e50e2
    AKASHI Takahiro authored
    This patch implements arm64 specific part to support function tracers,
    such as function (CONFIG_FUNCTION_TRACER), function_graph
    (CONFIG_FUNCTION_GRAPH_TRACER) and function profiler
    (CONFIG_FUNCTION_PROFILER).
    
    With 'function' tracer, all the functions in the kernel are traced with
    timestamps in ${sysfs}/tracing/trace. If function_graph tracer is
    specified, call graph is generated.
    
    The kernel must be compiled with -pg option so that _mcount() is inserted
    at the beginning of functions. This function is called on every function's
    entry as long as tracing is enabled.
    In addition, function_graph tracer also needs to be able to probe function's
    exit. ftrace_graph_caller() & return_to_handler do this by faking link
    register's value to intercept function's return path.
    
    More details on architecture specific requirements are described in
    Documentation/trace/ftrace-design.txt.
    Reviewed-by: default avatarGanapatrao Kulkarni <ganapatrao.kulkarni@cavium.com>
    Acked-by: default avatarWill Deacon <will.deacon@arm.com>
    Signed-off-by: default avatarAKASHI Takahiro <takahiro.akashi@linaro.org>
    Signed-off-by: default avatarWill Deacon <will.deacon@arm.com>
    819e50e2
ftrace.h 600 Bytes