lkml.org 
[lkml]   [2011]   [Aug]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH 1/5][RFC] tracing: Clean up tb_fmt to not give faulty compile warning
    From: Steven Rostedt <srostedt@redhat.com>

    gcc incorrectly states that the variable "fmt" is uninitialized when
    CC_OPITMIZE_FOR_SIZE is set.

    Instead of just blindly setting fmt to NULL, the code is cleaned up
    a little to be a bit easier for humans to follow, as well as gcc
    to know the variables are initialized.

    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    ---
    kernel/trace/trace_printk.c | 19 ++++++++++---------
    1 files changed, 10 insertions(+), 9 deletions(-)
    diff --git a/kernel/trace/trace_printk.c b/kernel/trace/trace_printk.c
    index 1f06468..6fd4ffd 100644
    --- a/kernel/trace/trace_printk.c
    +++ b/kernel/trace/trace_printk.c
    @@ -59,18 +59,19 @@ void hold_module_trace_bprintk_format(const char **start, const char **end)
    continue;
    }

    + fmt = NULL;
    tb_fmt = kmalloc(sizeof(*tb_fmt), GFP_KERNEL);
    - if (tb_fmt)
    + if (tb_fmt) {
    fmt = kmalloc(strlen(*iter) + 1, GFP_KERNEL);
    - if (tb_fmt && fmt) {
    - list_add_tail(&tb_fmt->list, &trace_bprintk_fmt_list);
    - strcpy(fmt, *iter);
    - tb_fmt->fmt = fmt;
    - *iter = tb_fmt->fmt;
    - } else {
    - kfree(tb_fmt);
    - *iter = NULL;
    + if (fmt) {
    + list_add_tail(&tb_fmt->list, &trace_bprintk_fmt_list);
    + strcpy(fmt, *iter);
    + tb_fmt->fmt = fmt;
    + } else
    + kfree(tb_fmt);
    }
    + *iter = fmt;
    +
    }
    mutex_unlock(&btrace_mutex);
    }
    --
    1.7.5.4



    \
     
     \ /
      Last update: 2011-08-10 18:33    [from the cache]
    ©2003-2014 Jasper Spaans. Advertise on this site