Re: perf_counter: request for three more sample data options

From: Robert Richter
Date: Fri Apr 03 2009 - 12:38:39 EST


On 03.04.09 19:51:11, Paul Mackerras wrote:
> Peter Zijlstra writes:
>
> > What I was thinking of was re-using some of the cpu_clock()
> > infrastructure. That provides us with a jiffy based GTOD sample,
> > cpu_clock() then uses TSC and a few filters to compute a current
> > timestamp.
> >
> > I was thinking about cutting back those filters and thus trusting the
> > TSC more -- which on x86 can do any random odd thing. So provided the
> > TSC is not doing funny the results will be ok-ish.
> >
> > This does mean however, that its not possible to know when its gone bad.
>
> I would expect that perfmon would be just reading the TSC and
> recording that. If you can read the TSC and do some correction then
> we're ahead. :)
>
> > The question to Paul is, does the powerpc sched_clock() call work in NMI
> > -- or hard irq disable -- context?
>
> Yes - timekeeping is one area where us powerpc guys can be smug. :)
> We have a per-core, 64-bit timebase register which counts at a
> constant frequency and is synchronized across all cores. So
> sched_clock works in any context on powerpc - all it does is read the
> timebase and do some simple integer arithmetic on it.

Ftrace is using ring_buffer_time_stamp() that finally uses
sched_clock(). But I am not sure if the time is correct when calling
from an NMI handler.

-Robert

--
Advanced Micro Devices, Inc.
Operating System Research Center
email: robert.richter@xxxxxxx

--
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/