Messages in this thread | | | Date | Wed, 27 Jan 2021 11:02:26 +0900 | From | Masami Hiramatsu <> | Subject | Re: [PATCH v3] tracing: precise log info for kretprobe addr err |
| |
On Tue, 26 Jan 2021 21:20:59 +0100 Oleg Nesterov <oleg@redhat.com> wrote:
> On 01/26, Masami Hiramatsu wrote: > > > > > > > > > > IOW, the "offset != 0" check removed by this patch is obviously wrong, right? > > > > > > > > No, not wrong. Even offset != 0, if the symbol exists in the kernel, > > kprobe_on_func_entry() will check it. > > Yes, but unless I am totally confused... if kprobe_on_func_entry() returns false, > then trace_kprobe_create() should fail with BAD_RETPROBE even if offset == 0 ?
Yes, if kprobe_on_func_entry() returns false, register_kretprobe() also returns an error.
----- int register_kretprobe(struct kretprobe *rp) { int ret = 0; struct kretprobe_instance *inst; int i; void *addr;
if (!kprobe_on_func_entry(rp->kp.addr, rp->kp.symbol_name, rp->kp.offset)) return -EINVAL;
-----
Thank you,
-- Masami Hiramatsu <mhiramat@kernel.org>
| |