lkml.org 
[lkml]   [2009]   [Oct]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 2/4] tracing: fix trace_seq_printf return value
From
Date
On Thu, 2009-10-22 at 00:02 +0200, Jiri Olsa wrote:
> On Wed, Oct 21, 2009 at 12:20:35PM -0400, Steven Rostedt wrote:
> > On Wed, 2009-10-21 at 16:36 +0200, Jiri Olsa wrote:
> > > I believe we want to return the number of written characters,
> > > instead of the available buffer length.
> > >
> > > wbr,
> > > jirka
> > >
> > > Signed-off-by: Jiri Olsa <jolsa@redhat.com>
> > > ---
> > > kernel/trace/trace_output.c | 2 +-
> > > 1 files changed, 1 insertions(+), 1 deletions(-)
> > >
> > > diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c
> > > index ed17565..e871125 100644
> > > --- a/kernel/trace/trace_output.c
> > > +++ b/kernel/trace/trace_output.c
> > > @@ -95,7 +95,7 @@ trace_seq_printf(struct trace_seq *s, const char *fmt, ...)
> > >
> > > s->len += ret;
> > >
> > > - return len;
> > > + return ret;
> >
> > Actually the return value here is ambiguous. Returning len is actually
> > safer. It probably should only return 0 (buffer not big enough to write
> > to) or 1 (buffer is big enough).
> >
> > Because this should actually return non zero:
> >
> > trace_seq_printf(s, "");
> >
> > -- Steve
> >
> > > }
> > > EXPORT_SYMBOL_GPL(trace_seq_printf);
> > >
> >
>
> I made the suggested fix, plus spot not used function.
>
> ---
> Making trace_seq_printf return 0 if the trace oversizes the buffer's free
> space, 1 otherwise. Removing not used trace_seq_vprintf function.

err, I hate to remove that function. This is a utility file that is
exported for other parts of the kernel to use. At least make that a
separate patch.

-- Steve




\
 
 \ /
  Last update: 2009-10-22 00:17    [W:0.074 / U:0.404 seconds]
©2003-2014 Jasper Spaans. Advertise on this site