2020-12-30 14:08:35

by Qiujun Huang

[permalink] [raw]
Subject: [PATCH v2] trace: Remove get/put_cpu() from function_trace_init

Since commit b6f11df26fdc ("trace: Call tracing_reset_online_cpus before
tracer->init()"), get/put_cpu() are not needed anymore.
We can use raw_smp_processor_id() instead.

Signed-off-by: Qiujun Huang <[email protected]>
---
v2:
Use raw_smp_processor_id() instead of smp_processor_id()
---
kernel/trace/trace_functions.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/kernel/trace/trace_functions.c b/kernel/trace/trace_functions.c
index c5095dd28e20..f67aec5bb771 100644
--- a/kernel/trace/trace_functions.c
+++ b/kernel/trace/trace_functions.c
@@ -106,8 +106,7 @@ static int function_trace_init(struct trace_array *tr)

ftrace_init_array_ops(tr, func);

- tr->array_buffer.cpu = get_cpu();
- put_cpu();
+ tr->array_buffer.cpu = raw_smp_processor_id();

tracing_start_cmdline_record();
tracing_start_function_trace(tr);
--
2.17.1


2021-01-12 10:24:36

by Steven Rostedt

[permalink] [raw]
Subject: Re: [PATCH v2] trace: Remove get/put_cpu() from function_trace_init

On Wed, 30 Dec 2020 22:05:21 +0800
Qiujun Huang <[email protected]> wrote:

> Since commit b6f11df26fdc ("trace: Call tracing_reset_online_cpus before
> tracer->init()"), get/put_cpu() are not needed anymore.
> We can use raw_smp_processor_id() instead.

I added both your patches (this one and the trace_ignore_this_task()
kernel-doc fix to my queue.

Thanks!

-- Steve

>
> Signed-off-by: Qiujun Huang <[email protected]>
> ---
> v2:
> Use raw_smp_processor_id() instead of smp_processor_id()
> ---
> kernel/trace/trace_functions.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/kernel/trace/trace_functions.c b/kernel/trace/trace_functions.c
> index c5095dd28e20..f67aec5bb771 100644
> --- a/kernel/trace/trace_functions.c
> +++ b/kernel/trace/trace_functions.c
> @@ -106,8 +106,7 @@ static int function_trace_init(struct trace_array *tr)
>
> ftrace_init_array_ops(tr, func);
>
> - tr->array_buffer.cpu = get_cpu();
> - put_cpu();
> + tr->array_buffer.cpu = raw_smp_processor_id();
>
> tracing_start_cmdline_record();
> tracing_start_function_trace(tr);