From: Thomas Gleixner <tglx@linutronix.de>
To: john stultz <johnstul@us.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
Linus Walleij <linus.ml.walleij@gmail.com>,
Paul Mundt <lethal@linux-sh.org>, Ingo Molnar <mingo@elte.hu>,
Andrew Victor <linux@maxim.org.za>,
Haavard Skinnemoen <hskinnemoen@atmel.com>,
Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org, linux-sh@vger.kernel.org,
linux-arm-kernel@lists.arm.linux.org.uk,
John Stultz <johnstul@linux.vnet.ibm.com>
Subject: Re: [PATCH] sched: Support current clocksource handling in fallback
Date: Tue, 26 May 2009 23:39:53 +0000 [thread overview]
Message-ID: <alpine.LFD.2.00.0905270129210.1762@localhost.localdomain> (raw)
In-Reply-To: <1243378835.3275.30.camel@localhost>
On Tue, 26 May 2009, john stultz wrote:
w> > > Is latency all we care about? How bad would
> > > the TSC have to be before we wouldn't want to use it?
> >
> > Anything better than jiffies ;-)
>
> Except HPET thought, right? :)
Eeek. HPET access serializes across cores. That's orders of magnitudes
worse than the granularity loss of jiffies.
> > For sched_clock() we want something high-res that is monotonic per cpu
> > and has a bounded drift between cpus in the order of jiffies.
> >
> > Look at kernel/sched_clock.c for what we do to make really shitty TSC
> > conform to the above requirements.
>
> Sure, I guess what I'm trying to pull out here is that should we try to
> create some OK_FOR_SCHED_CLOCK flag for clocksources, and then we try to
> make this generic so other arches can add that flag and be done, what is
> the guidance we want to give to arch maintainers for setting that flag?
>
> 1) Has to be very very fast. Can we put a number on this? 50ns to read?
>
> 2) How long does it have to be monotonic for? Is it ok if it wraps every
> few seconds?
>
> If get_cycles() || jiffies is what we want, then lets leave it there. I
> just want to avoid mixing the clocksource code into the sched clock code
> until we really get this sort of definition sorted.
The criterion is simple. If arch maintainer decides that the access to
the particular clock source is the best compromise between granularity
and access speed vs. jiffies then he can express that by setting the
flag.
Where is the difference between that flag and an arch specific
sched_clock() implementation which overrides the weak generic one ?
That arch specific function will probably do the same thing:
return cyc2ns(whathever_clocksource_the_maintainer_thinks_is_the_best);
So let's get rid of those sched_clock() overrrides which do nothing
else than the generic version.
Thanks,
tglx
next prev parent reply other threads:[~2009-05-26 23:39 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-26 6:15 [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-26 14:31 ` [PATCH] sched: Support current clocksource handling in fallback Linus Walleij
2009-05-26 14:38 ` [PATCH] sched: Support current clocksource handling in Peter Zijlstra
2009-05-26 20:17 ` [PATCH] sched: Support current clocksource handling in fallback Thomas Gleixner
2009-05-26 23:08 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-26 23:13 ` Paul Mundt
2009-05-26 23:25 ` [PATCH] sched: Support current clocksource handling in john stultz
2009-05-26 23:44 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-27 0:18 ` [PATCH] sched: Support current clocksource handling in fallback Thomas Gleixner
2009-05-27 0:22 ` [PATCH] sched: Support current clocksource handling in john stultz
2009-05-27 0:26 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-27 1:09 ` [PATCH] sched: Support current clocksource handling in john stultz
2009-05-27 0:27 ` [PATCH] sched: Support current clocksource handling in fallback Thomas Gleixner
2009-05-26 23:49 ` Thomas Gleixner
2009-05-27 0:15 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-27 16:25 ` [PATCH] sched: Support current clocksource handling in Daniel Walker
2009-05-28 8:44 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 9:19 ` Paul Mundt
2009-05-28 9:34 ` [PATCH] sched: Support current clocksource handling in Peter Zijlstra
2009-05-28 11:09 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 12:22 ` [PATCH] sched: Support current clocksource handling in fallback Thomas Gleixner
2009-05-28 12:40 ` [PATCH] sched: Support current clocksource handling in Peter Zijlstra
2009-05-28 12:42 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 12:53 ` [PATCH] sched: Support current clocksource handling in fallback Thomas Gleixner
2009-05-28 12:59 ` [PATCH] sched: Support current clocksource handling in Peter Zijlstra
2009-05-28 13:20 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 16:13 ` [PATCH] sched: Support current clocksource handling in Daniel Walker
2009-05-28 16:32 ` Peter Zijlstra
2009-05-28 16:40 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 16:52 ` [PATCH] sched: Support current clocksource handling in Daniel Walker
2009-05-28 16:58 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 17:38 ` [PATCH] sched: Support current clocksource handling in Daniel Walker
2009-05-28 17:46 ` [PATCH] sched: Support current clocksource handling in fallback Thomas Gleixner
2009-05-28 17:53 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 18:10 ` [PATCH] sched: Support current clocksource handling in Daniel Walker
2009-05-28 18:27 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 19:04 ` [PATCH] sched: Support current clocksource handling in Daniel Walker
2009-05-28 19:34 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 19:41 ` [PATCH] sched: Support current clocksource handling in Daniel Walker
2009-05-28 23:37 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-28 18:44 ` [PATCH] sched: Support current clocksource handling in fallback Thomas Gleixner
2009-05-28 17:00 ` Thomas Gleixner
2009-05-28 17:07 ` [PATCH] sched: Support current clocksource handling in John Stultz
2009-05-26 20:23 ` john stultz
2009-05-26 20:30 ` Peter Zijlstra
2009-05-26 20:40 ` john stultz
2009-05-26 20:55 ` Peter Zijlstra
2009-05-26 23:00 ` john stultz
2009-05-26 23:24 ` [PATCH] sched: Support current clocksource handling in fallback Mangalampalli, JayantX
2009-05-27 0:04 ` Thomas Gleixner
2009-05-26 23:39 ` Thomas Gleixner [this message]
2009-05-27 6:58 ` [PATCH] sched: Support current clocksource handling in Peter Zijlstra
2009-05-26 20:39 ` [PATCH] sched: Support current clocksource handling in fallback Thomas Gleixner
2009-05-26 14:43 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-26 14:50 ` [PATCH] sched: Support current clocksource handling in Peter Zijlstra
2009-05-26 14:53 ` [PATCH] sched: Support current clocksource handling in fallback sched_clock() Paul Mundt
2009-05-26 15:02 ` [PATCH] sched: Support current clocksource handling in fallback Matthieu CASTET
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.LFD.2.00.0905270129210.1762@localhost.localdomain \
--to=tglx@linutronix.de \
--cc=akpm@linux-foundation.org \
--cc=hskinnemoen@atmel.com \
--cc=johnstul@linux.vnet.ibm.com \
--cc=johnstul@us.ibm.com \
--cc=lethal@linux-sh.org \
--cc=linus.ml.walleij@gmail.com \
--cc=linux-arm-kernel@lists.arm.linux.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sh@vger.kernel.org \
--cc=linux@maxim.org.za \
--cc=mingo@elte.hu \
--cc=peterz@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox