(2014/07/04 5:07), Steven Rostedt wrote: > + > +void arch_ftrace_update_trampoline(struct ftrace_ops *ops) > +{ > + unsigned char *new; > + unsigned long start_offset; > + unsigned long call_offset; > + unsigned long offset; > + unsigned long ip; > + int ret; > + > + if (ops->trampoline) { > + /* > + * The ftrace_ops caller may set up its own trampoline. > + * In such a case, this code must not modify it. > + */ > + if (!(ops->flags & FTRACE_OPS_FL_ALLOC_TRAMP)) > + return;
Just a question, what happen if the ftrace_ops caller sets up a trampoline which is not compatible to the ftrace's trampoline, and the ftrace_ops conflicts on a IP with other ftrace_ops? I guess in that case ftrace will use the loop callback on the IP, but since the trampoline is not compatible, the result will not be same, is that right? :) Thank you, -- Masami HIRAMATSU Software Platform Research Dept. Linux Technology Research Center Hitachi, Ltd., Yokohama Research Laboratory E-mail: masami.hiramatsu...@hitachi.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/