On Thu, 2017-06-01 at 10:48:17 UTC, "Naveen N. Rao" wrote: > ftrace_caller() depends on a modified regs->nip to detect if a certain > function has been livepatched. However, with KPROBES_ON_FTRACE, it is > possible for regs->nip to have been modified by the kprobes pre_handler > (jprobes, for instance). In this case, we do not want to invoke the > livepatch_handler so as not to consume the livepatch stack. > > To distinguish between the two (kprobes and livepatch), we check if > there is an active kprobe on the current function. If there is, then we > know for sure that it must have modified the NIP as we don't support > livepatching a kprobe'd function. In this case, we simply skip the > livepatch_handler and branch to the new NIP. Otherwise, the > livepatch_handler is invoked. > > Fixes: ead514d5fb30a ("powerpc/kprobes: Add support for > KPROBES_ON_FTRACE") > Signed-off-by: Naveen N. Rao <naveen.n....@linux.vnet.ibm.com> > Reviewed-by: Masami Hiramatsu <mhira...@kernel.org>
Applied to powerpc fixes, thanks. https://git.kernel.org/powerpc/c/c05b8c4474c03026aaa7f8872e7836 cheers