• Jiri Olsa's avatar
    tracing: Fix trace_seq_printf() return value · 3e69533b
    Jiri Olsa authored
    trace_seq_printf() return value is a little ambiguous. It
    currently returns the length of the space available in the
    buffer. printf usually returns the amount written. This is not
    adequate here, because:
    
      trace_seq_printf(s, "");
    
    is perfectly legal, and returning 0 would indicate that it
    failed.
    
    We can always see the amount written by looking at the before
    and after values of s->len. This is not quite the same use as
    printf. We only care if the string was successfully written to
    the buffer or not.
    
    Make trace_seq_printf() return 0 if the trace oversizes the
    buffer's free space, 1 otherwise.
    Signed-off-by: default avatarJiri Olsa <jolsa@redhat.com>
    Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    LKML-Reference: <20091023233646.631787612@goodmis.org>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    3e69533b
trace_output.c 26.1 KB