lkml.org 
[lkml]   [2009]   [May]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] sched: Support current clocksource handling in fallback sched_clock().
    On Tue, 26 May 2009, john stultz wrote:

    > On Tue, 2009-05-26 at 16:38 +0200, Peter Zijlstra wrote:
    > > Added the generic clock and timer folks to CC.
    > >
    > > On Tue, 2009-05-26 at 16:31 +0200, Linus Walleij wrote:
    > > > 2009/5/26 Paul Mundt <lethal@linux-sh.org>:
    > > >
    > > > > */
    > > > > unsigned long long __attribute__((weak)) sched_clock(void)
    > > > > {
    > > > > + /*
    > > > > + * Use the current clocksource when it becomes available later in
    > > > > + * the boot process, and ensure that it has a high enough rating
    > > > > + * to make it suitable for general use.
    > > > > + */
    > > > > + if (clock && clock->rating >= 100)
    > > > > + return cyc2ns(clock, clocksource_read(clock));
    >
    > I'm not super familiar with the recent sched_clock changes, but how will
    > this work if the clocksource wraps (ACPI PM wraps every 2-5 seconds).

    You don't want to use ACPI PM for sched_clock, never ever.

    > Also there's no locking here, so the clocksource could change under you.
    >
    > Further, checking for rating being greater then 100 really doesn't mean
    > anything. Probably need to check if the clocksource is continuous
    > instead.

    I'd like to have an explicit flag for this, so we can avoid that stuff
    like pmtimer and other slow access clock sources are used.

    > Overall, I'd probably suggest thinking this through a bit more. At some
    > point doing this right will cause sched_clock() to be basically the same
    > as ktime_get(). So why not just use that instead of remaking it?

    ktime_get() involves xtime lock and the scheduler does not care about
    a slightly wrong value. sched_clock does not have the accuracy
    requirements of time keeping,

    If we have an explicit flag we can replace lots of arch/embedded
    sched_clock implementations with a generic one which is a Good Thing.

    There is a world beside the broken x86 timers :)

    Thanks,

    tglx


    \
     
     \ /
      Last update: 2009-05-26 22:43    [W:0.021 / U:59.036 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site