• Steven Rostedt (VMware)'s avatar
    ftrace: Add register_ftrace_direct() · 763e34e7
    Steven Rostedt (VMware) authored
    Add the start of the functionality to allow other trampolines to use the
    ftrace mcount/fentry/nop location. This adds two new functions:
    
     register_ftrace_direct() and unregister_ftrace_direct()
    
    Both take two parameters: the first is the instruction address of where the
    mcount/fentry/nop exists, and the second is the trampoline to have that
    location called.
    
    This will handle cases where ftrace is already used on that same location,
    and will make it still work, where the registered direct called trampoline
    will get called after all the registered ftrace callers are handled.
    
    Currently, it will not allow for IP_MODIFY functions to be called at the
    same locations, which include some kprobes and live kernel patching.
    
    At this point, no architecture supports this. This is only the start of
    implementing the framework.
    Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
    763e34e7
ftrace.h 30.4 KB