Re: [PATCH v2] trace/kprobe: remove duplicated calls of ring_buffer_event_data
From: Google
Date: Wed Oct 19 2022 - 10:55:29 EST
On Wed, 19 Oct 2022 09:30:22 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> On Wed, 19 Oct 2022 10:11:18 +0800
> Song Chen <chensong_2000@xxxxxx> wrote:
>
> > Function __kprobe_trace_func calls ring_buffer_event_data to
> > get a ring buffer, however, it has been done in above call
> > trace_event_buffer_reserve. So does __kretprobe_trace_func.
> >
> > This patch removes those duplicated calls.
> >
> > Signed-off-by: Song Chen <chensong_2000@xxxxxx>
>
> Reviewed-by: Steven Rostedt (Google) <rostedt@xxxxxxxxxxx>
>
> Masami, want to take this one?
yes, this looks good to me.
Acked-by: Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>
Thank you,
>
> -- Steve
>
> > ---
> > kernel/trace/trace_kprobe.c | 2 --
> > 1 file changed, 2 deletions(-)
> >
> > diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
> > index 23f7f0ec4f4c..f905829b856b 100644
> > --- a/kernel/trace/trace_kprobe.c
> > +++ b/kernel/trace/trace_kprobe.c
> > @@ -1394,7 +1394,6 @@ __kprobe_trace_func(struct trace_kprobe *tk, struct pt_regs *regs,
> > return;
> >
> > fbuffer.regs = regs;
> > - entry = fbuffer.entry = ring_buffer_event_data(fbuffer.event);
> > entry->ip = (unsigned long)tk->rp.kp.addr;
> > store_trace_args(&entry[1], &tk->tp, regs, sizeof(*entry), dsize);
> >
> > @@ -1435,7 +1434,6 @@ __kretprobe_trace_func(struct trace_kprobe *tk, struct kretprobe_instance *ri,
> > return;
> >
> > fbuffer.regs = regs;
> > - entry = fbuffer.entry = ring_buffer_event_data(fbuffer.event);
> > entry->func = (unsigned long)tk->rp.kp.addr;
> > entry->ret_ip = get_kretprobe_retaddr(ri);
> > store_trace_args(&entry[1], &tk->tp, regs, sizeof(*entry), dsize);
>
--
Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>