Re: [PATCH 1/2] tracing: Have syscall trace events use trace_event_buffer_lock_reserve()

From: Masami Hiramatsu
Date: Mon Jan 10 2022 - 02:07:00 EST


On Fri, 07 Jan 2022 17:56:56 -0500
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> From: Steven Rostedt <rostedt@xxxxxxxxxxx>
>
> Currently, the syscall trace events call trace_buffer_lock_reserve()
> directly, which means that it misses out on some of the filtering
> optimizations provided by the helper function
> trace_event_buffer_lock_reserve(). Have the syscall trace events call that
> instead, as it was missed when adding the update to use the temp buffer
> when filtering.

Looks good to me.

Reviewed-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>

Thank you,

>
> Cc: stable@xxxxxxxxxxxxxxx
> Fixes: 0fc1b09ff1ff4 ("tracing: Use temp buffer when filtering events")
> Signed-off-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
> ---
> kernel/trace/trace_syscalls.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c
> index 8bfcd3b09422..f755bde42fd0 100644
> --- a/kernel/trace/trace_syscalls.c
> +++ b/kernel/trace/trace_syscalls.c
> @@ -323,8 +323,7 @@ static void ftrace_syscall_enter(void *data, struct pt_regs *regs, long id)
>
> trace_ctx = tracing_gen_ctx();
>
> - buffer = tr->array_buffer.buffer;
> - event = trace_buffer_lock_reserve(buffer,
> + event = trace_event_buffer_lock_reserve(&buffer, trace_file,
> sys_data->enter_event->event.type, size, trace_ctx);
> if (!event)
> return;
> @@ -367,8 +366,7 @@ static void ftrace_syscall_exit(void *data, struct pt_regs *regs, long ret)
>
> trace_ctx = tracing_gen_ctx();
>
> - buffer = tr->array_buffer.buffer;
> - event = trace_buffer_lock_reserve(buffer,
> + event = trace_event_buffer_lock_reserve(&buffer, trace_file,
> sys_data->exit_event->event.type, sizeof(*entry),
> trace_ctx);
> if (!event)
> --
> 2.33.0


--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>