Re: [PATCHv2] trace: adding unstable sched clock note to thewarning

From: Steven Rostedt
Date: Mon Mar 07 2011 - 21:06:45 EST


On Mon, 2011-03-07 at 11:45 +0100, Jiri Olsa wrote:
> hi,
> any feedback?

I could pull it in.

Thanks,

-- Steve

>
> thanks,
> jirka
>
> On Fri, Feb 18, 2011 at 03:52:19PM +0100, Jiri Olsa wrote:
> > hi,
> >
> > warning "Delta way too big" warning might appear on a system with
> > unstable shed clock right after the system is resumed and tracing
> > was enabled during the suspend.
> >
> > Since it's not realy bug, and the unstable sched clock is working
> > fast and reliable otherwise, Steven suggested to keep using the
> > sched clock in any case and just to make note in the warning itself.
> >
> > v2 changes:
> > - added CONFIG_HAVE_UNSTABLE_SCHED_CLOCK dependency
> >
> > wbr,
> > jirka
> >
> >
> > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
> > ---
> > kernel/trace/ring_buffer.c | 12 ++++++++++--
> > 1 files changed, 10 insertions(+), 2 deletions(-)
> >
> > diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
> > index bd1c35a..37c4d3e 100644
> > --- a/kernel/trace/ring_buffer.c
> > +++ b/kernel/trace/ring_buffer.c
> > @@ -2162,11 +2162,19 @@ rb_reserve_next_event(struct ring_buffer *buffer,
> > if (likely(ts >= cpu_buffer->write_stamp)) {
> > delta = diff;
> > if (unlikely(test_time_stamp(delta))) {
> > + int local_clock_stable = 1;
> > +#ifdef CONFIG_HAVE_UNSTABLE_SCHED_CLOCK
> > + local_clock_stable = sched_clock_stable;
> > +#endif
> > WARN_ONCE(delta > (1ULL << 59),
> > - KERN_WARNING "Delta way too big! %llu ts=%llu write stamp = %llu\n",
> > + KERN_WARNING "Delta way too big! %llu ts=%llu write stamp = %llu\n%s",
> > (unsigned long long)delta,
> > (unsigned long long)ts,
> > - (unsigned long long)cpu_buffer->write_stamp);
> > + (unsigned long long)cpu_buffer->write_stamp,
> > + local_clock_stable ? "" :
> > + "If you just came from a suspend/resume,\n"
> > + "please switch to the trace global clock:\n"
> > + " echo global > /sys/kernel/debug/tracing/trace_clock\n");
> > add_timestamp = 1;
> > }
> > }
> > --
> > 1.7.1
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@xxxxxxxxxxxxxxx
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/