Messages in this thread | | | Subject | Re: [PATCH] tracing: fix missing osnoise tracer on max_latency | From | Jackie Liu <> | Date | Wed, 22 Sep 2021 10:45:21 +0800 |
| |
在 2021/9/22 上午10:40, Steven Rostedt 写道: > On Wed, 22 Sep 2021 10:26:24 +0800 > Jackie Liu <liu.yun@linux.dev> wrote: > >>>> diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c >>>> index 7896d30d90f7..d7e3ed82fafd 100644 >>>> --- a/kernel/trace/trace.c >>>> +++ b/kernel/trace/trace.c >>>> @@ -1744,11 +1744,7 @@ void latency_fsnotify(struct trace_array *tr) >>>> irq_work_queue(&tr->fsnotify_irqwork); >>>> } >>>> >>>> -/* >>>> - * (defined(CONFIG_TRACER_MAX_TRACE) || defined(CONFIG_HWLAT_TRACER)) && \ >>>> - * defined(CONFIG_FSNOTIFY) >>>> - */ >>>> -#else >>>> +#else /* LATENCY_FS_NOTIFY >> >>>> #define trace_create_maxlat_file(tr, d_tracer) \ >>>> trace_create_file("tracing_max_latency", 0644, d_tracer, \ >>> >>> To clean this up even better, we should add here: >>> >>> #elif defined(CONFIG_TRACER_MAX_TRACE) || defined(CONFIG_HWLAT_TRACER) \ >>> || defined(CONFIG_OSNOISE_TRACER) >> >> This place should need to use LATENCY_FS_NOTIFY, because not only these >> three Traces, we also need to pay attention to CONFIG_FSNOTIFY, at >> least, we should not change the original meaning. >> >> How about this: >> >> diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c >> index 7896d30d90f7..6a88d03c6d3b 100644 >> --- a/kernel/trace/trace.c >> +++ b/kernel/trace/trace.c >> @@ -1744,16 +1744,14 @@ void latency_fsnotify(struct trace_array *tr) >> irq_work_queue(&tr->fsnotify_irqwork); >> } >> >> -/* >> - * (defined(CONFIG_TRACER_MAX_TRACE) || defined(CONFIG_HWLAT_TRACER)) && \ >> - * defined(CONFIG_FSNOTIFY) >> - */ >> -#else >> +#elif defined(LATENCY_FS_NOTIFY) > > Um, but isn't the #if before the #else: > > #ifdef LATENCY_FS_NOTIFY > > ? > > Then, here we have: > > > #ifdef LATENCY_FS_NOTIFY > > [..] > > #elif defined(LATENCY_FS_NOTIFY) > > // this will never be called. > > That doesn't make any sense. > > -- Steve
Thanks Steve, I see. :)
-- BR, Jackie Liu
> >> >> #define trace_create_maxlat_file(tr, d_tracer) \ >> trace_create_file("tracing_max_latency", 0644, d_tracer, \ >> &tr->max_latency, &tracing_max_lat_fops) >> >> +#else >> +#define trace_create_maxlat_file(tr, d_tracer) do { } while (0) >> #endif >> >> #ifdef CONFIG_TRACER_MAX_TRACE >> @@ -9473,9 +9471,7 @@ init_tracer_tracefs(struct trace_array *tr, struct >> dentry *d_tracer) >> >> create_trace_options_dir(tr); >> >> -#if defined(CONFIG_TRACER_MAX_TRACE) || defined(CONFIG_HWLAT_TRACER) >> trace_create_maxlat_file(tr, d_tracer); >> -#endif >> >> if (ftrace_create_function_files(tr, d_tracer)) >> MEM_FAIL(1, "Could not allocate function filter files"); >> >> >> == >> What do you think? If there is no problem, I will send V2. >>
| |