lkml.org 
[lkml]   [2009]   [Dec]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 05/13] ftrace: Call trace_parser_clear() properly
    Date
    From: Li Zefan <lizf@cn.fujitsu.com>

    I found a weird behavior:

    # echo 'fuse:*' > set_ftrace_filter
    bash: echo: write error: Invalid argument
    # cat set_ftrace_filter
    fuse_dev_fasync
    fuse_dev_poll
    fuse_copy_do

    We should call trace_parser_clear() no matter ftrace_process_regex()
    returns 0 or -errno, otherwise we will actually take the unaccepted
    records from ftrace_regex_release().

    Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
    Acked-by: Steven Rostedt <rostedt@goodmis.org>
    LKML-Reference: <4B1DC4D2.3000406@cn.fujitsu.com>
    Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
    ---
    kernel/trace/ftrace.c | 3 +--
    1 files changed, 1 insertions(+), 2 deletions(-)

    diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
    index 08a3fb5..ff8aecd 100644
    --- a/kernel/trace/ftrace.c
    +++ b/kernel/trace/ftrace.c
    @@ -2208,10 +2208,9 @@ ftrace_regex_write(struct file *file, const char __user *ubuf,
    !trace_parser_cont(parser)) {
    ret = ftrace_process_regex(parser->buffer,
    parser->idx, enable);
    + trace_parser_clear(parser);
    if (ret)
    goto out_unlock;
    -
    - trace_parser_clear(parser);
    }

    ret = read;
    --
    1.6.2.3


    \
     
     \ /
      Last update: 2009-12-13 14:11    [W:5.544 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site