lkml.org 
[lkml]   [2014]   [Oct]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 10/11] ftrace: Add sanity check when unregistering last ftrace_ops
    From: "Steven Rostedt (Red Hat)" <rostedt@goodmis.org>

    When the last ftrace_ops is unregistered, all the function records should
    have a zeroed flags value. Make sure that is the case when the last ftrace_ops
    is unregistered.

    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    ---
    kernel/trace/ftrace.c | 15 +++++++++++++++
    1 file changed, 15 insertions(+)

    diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
    index d325a1e76554..fb186b9ddf51 100644
    --- a/kernel/trace/ftrace.c
    +++ b/kernel/trace/ftrace.c
    @@ -2416,6 +2416,21 @@ static int ftrace_shutdown(struct ftrace_ops *ops, int command)

    ftrace_run_update_code(command);

    + /*
    + * If there's no more ops registered with ftrace, run a
    + * sanity check to make sure all rec flags are cleared.
    + */
    + if (ftrace_ops_list == &ftrace_list_end) {
    + struct ftrace_page *pg;
    + struct dyn_ftrace *rec;
    +
    + do_for_each_ftrace_rec(pg, rec) {
    + if (FTRACE_WARN_ON_ONCE(rec->flags))
    + pr_warn(" %pS flags:%lx\n",
    + (void *)rec->ip, rec->flags);
    + } while_for_each_ftrace_rec();
    + }
    +
    ops->old_hash.filter_hash = NULL;
    ops->old_hash.notrace_hash = NULL;

    --
    2.0.1



    \
     
     \ /
      Last update: 2014-10-07 00:21    [W:4.312 / U:0.132 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site