Re: [PATCH 3/6] perf record: add time-of-day option

From: Arnaldo Carvalho de Melo
Date: Tue Mar 01 2011 - 12:08:04 EST


Em Tue, Mar 01, 2011 at 09:45:27AM -0700, David Ahern escreveu:
>
>
> On 03/01/2011 09:37 AM, Peter Zijlstra wrote:
> > On Tue, 2011-03-01 at 09:09 -0700, David Ahern wrote:
> >>
> >> I did not code it create samples of a realtime-clock event; I coded it
> >> to add an event to the stream on demand -- whatever event the fd is
> >> tied to.
> >>
> >>
> > Well yes, but aside from you and the realtime clock stuff, who'd ever
> > want to do this particular thing?
>
> One example would be a system watchdog that decided for some reason or
> another to force an event sample because of some event it detected.
>
> >
> > I'd much rather expose the whole
> > local_clock()/perf_clock()/trace_clock() (should all be the same anyway)
> > as a posix clock using CLOCK_TRACING or whatever would be an appropriate
> > name.
> >
> > [ Since the whole thing is NMI safe it should be well possible to make a
> > VDSO version as well. ]
> >
> > Anyway, once its visible as a posix clock you can sync up from
> > userspace. And this clock is indeed wanted for other things too, like
> > user-space tracing etc.
> >
>
> And for some silly reason I sense a time trap here (pun intended) .....
>
> So your pushback is:
> 1. throw out the realtime-clock event patch,

Nope

> 2. add a new CLOCK_TRACING type to clock_gettime with VDSO hook,

Yes

> 3. and use a synthesized event from userspace for snapshotting
> perf_clock to time-of-day -- similar to what I have now, but one that
> will guarantee a time-of-day to perf_clock correlation (versus the
> current one which hopes that perf_clock is the monotonic clock).

Nope.

My understanding was that for the initial gettime you use
clock_gettime(), and then you get CLOCK_REALTIME events in the stream
for resynch, etc.

Peter?

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