[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080925123802.GA6900@elte.hu>
Date: Thu, 25 Sep 2008 14:38:03 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Frédéric Weisbecker <fweisbec@...il.com>
Cc: linux-kernel@...r.kernel.org, Steven Rostedt <rostedt@...dmis.org>,
Pekka Paalanen <pq@....fi>
Subject: Re: [Patch -tip 1/3] Tracing/ftrace: Relay unhandled entry output
* Frédéric Weisbecker <fweisbec@...il.com> wrote:
> Hi!
>
> I tried to figure out the origin of the bug reported by Pekka Paalanen
> about the broken pipe:
> http://kerneltrap.org/mailarchive/linux-kernel/2008/9/15/3305224
>
> When I add a trace_mark with the boot tracer, I had this same problem
> but this time it was easy to reproduce.
>
> When it calls a tracer's print_line callback, the print_trace_line function
> in trace.c returns whithout verifying if it could handle the entry properly.
> And actually the seq could be empty.
>
> For example the boot_tracer don't handle TRACE_PRINT. Nevertheless it
> wants them to be printed as a default way.
>
> So print_trace_line function should relay on the other functions which could handle
> an output if one of them fail.
>
> Reported-by: Pekka Paalanen <pq@....fi>
> Signed-off-by: Frederic Weisbecker <fweisbec@...il.com>
ah, nice! Applied to tip/tracing/ftrace.
Small nit: could you please send another patch on top of this patch that
cleans up the checkpatch failures below?
checkpatch usage: you can run it like this:
scripts/checkpatch.pl --file kernel/trace/*.c
and/or you can run it over patches as well before you submit them.
Ingo
------------->
ERROR: do not use assignment in if condition
#43: FILE: kernel/trace/trace.c:1910:
+ if ((ret = iter->trace->print_line(iter)))
ERROR: do not use assignment in if condition
#48: FILE: kernel/trace/trace.c:1914:
+ if ((ret = print_bin_fmt(iter)))
ERROR: do not use assignment in if condition
#53: FILE: kernel/trace/trace.c:1918:
+ if ((ret = print_hex_fmt(iter)))
ERROR: do not use assignment in if condition
#58: FILE: kernel/trace/trace.c:1922:
+ if ((ret = print_raw_fmt(iter)))
ERROR: do not use assignment in if condition
#63: FILE: kernel/trace/trace.c:1926:
+ if ((ret = print_lat_fmt(iter, iter->idx, iter->cpu)))
total: 5 errors, 0 warnings, 0 checks, 32 lines checked
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists