lkml.org 
[lkml]   [2013]   [Jul]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v3 11/12] tracing: guard tracing_selftest_disabled by CONFIG_FTRACE_STARTUP_TEST
    On 2013/7/3 7:56, Steven Rostedt wrote:
    > On Wed, 2013-04-10 at 11:26 +0800, zhangwei(Jovi) wrote:
    >> From: "zhangwei(Jovi)" <jovi.zhangwei@huawei.com>
    >>
    >> Variable tracing_selftest_disabled have not any sense when
    >> CONFIG_FTRACE_STARTUP_TEST is disabled.
    >>
    >> This patch also remove __read_mostly attribute, since variable
    >> tracing_selftest_disabled really not read mostly.
    >
    > Yes it is mostly read only. Sure, it's not read much, but it is also
    > only written to once. That makes it, "read mostly".
    >
    > -- Steve
    >
    Ok, we can leave the __read_mostly attribute.

    And tracing_selftest_disabled still can move to CONFIG_FTRACE_STARTUP_TEST
    guard, normally CONFIG_FTRACE_STARTUP_TEST is disabled in most system.

    Do I need to resend this patch?

    jovi

    >>
    >> Signed-off-by: zhangwei(Jovi) <jovi.zhangwei@huawei.com>
    >> ---
    >> kernel/trace/trace.c | 6 ++++--
    >> kernel/trace/trace.h | 2 +-
    >> kernel/trace/trace_events.c | 2 ++
    >> 3 files changed, 7 insertions(+), 3 deletions(-)
    >>
    >> diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
    >> index ee4e110..09a3aa8 100644
    >> --- a/kernel/trace/trace.c
    >> +++ b/kernel/trace/trace.c
    >> @@ -58,10 +58,12 @@ bool ring_buffer_expanded;
    >> */
    >> static bool __read_mostly tracing_selftest_running;
    >>
    >> +#ifdef CONFIG_FTRACE_STARTUP_TEST
    >> /*
    >> * If a tracer is running, we do not want to run SELFTEST.
    >> */
    >> -bool __read_mostly tracing_selftest_disabled;
    >> +bool tracing_selftest_disabled;
    >> +#endif
    >>
    >> /* For tracers that don't implement custom flags */
    >> static struct tracer_opt dummy_tracer_opt[] = {
    >> @@ -1069,8 +1071,8 @@ int register_tracer(struct tracer *type)
    >> tracing_set_tracer(type->name);
    >> default_bootup_tracer = NULL;
    >> /* disable other selftests, since this will break it. */
    >> - tracing_selftest_disabled = true;
    >> #ifdef CONFIG_FTRACE_STARTUP_TEST
    >> + tracing_selftest_disabled = true;
    >> printk(KERN_INFO "Disabling FTRACE selftests due to running tracer '%s'\n",
    >> type->name);
    >> #endif
    >> diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
    >> index 9b8afa7..e9ef8b7 100644
    >> --- a/kernel/trace/trace.h
    >> +++ b/kernel/trace/trace.h
    >> @@ -546,10 +546,10 @@ extern int DYN_FTRACE_TEST_NAME(void);
    >> extern int DYN_FTRACE_TEST_NAME2(void);
    >>
    >> extern bool ring_buffer_expanded;
    >> -extern bool tracing_selftest_disabled;
    >> DECLARE_PER_CPU(int, ftrace_cpu_disabled);
    >>
    >> #ifdef CONFIG_FTRACE_STARTUP_TEST
    >> +extern bool tracing_selftest_disabled;
    >> extern int trace_selftest_startup_function(struct tracer *trace,
    >> struct trace_array *tr);
    >> extern int trace_selftest_startup_function_graph(struct tracer *trace,
    >> diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
    >> index 7c52a51..7c4a16b 100644
    >> --- a/kernel/trace/trace_events.c
    >> +++ b/kernel/trace/trace_events.c
    >> @@ -2251,7 +2251,9 @@ static __init int setup_trace_event(char *str)
    >> {
    >> strlcpy(bootup_event_buf, str, COMMAND_LINE_SIZE);
    >> ring_buffer_expanded = true;
    >> +#ifdef CONFIG_FTRACE_STARTUP_TEST
    >> tracing_selftest_disabled = true;
    >> +#endif
    >>
    >> return 1;
    >> }
    >
    >
    >
    > .
    >




    \
     
     \ /
      Last update: 2013-07-03 06:41    [W:3.365 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site