From: Linus Walleij <linus.ml.walleij@gmail.com>
To: 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,
peterz@infradead.org
Cc: linux-arm-kernel@lists.arm.linux.org.uk
Subject: Re: [PATCH] sched: Support current clocksource handling in fallback
Date: Tue, 26 May 2009 14:31:58 +0000 [thread overview]
Message-ID: <63386a3d0905260731m655bfee3q82a6f52d71fa3cef@mail.gmail.com> (raw)
In-Reply-To: <20090526061532.GD9188@linux-sh.org>
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));
> +
> + /* Otherwise just fall back on jiffies */
> return (unsigned long long)(jiffies - INITIAL_JIFFIES)
> * (NSEC_PER_SEC / HZ);
> }
This seems like it would make the patch I sent the other day
unnecessary (subject u300 sched_clock() implementation).
It would also trim off this solution found in all OMAP platforms in
arch/arm/plat-omap/common.c
BUT Peter Zijlstra replied to my question about why this wasn't
generic with:
[peterz]:
> But that is the reason this isn't generic, non of the 'stable'
> clocksources on x86 are fast enough to use as sched_clock.
Does that mean clock->rating for these clocksources is
for certain < 100?
The definition of "rating" from the kerneldoc does not
seem to imply that, it's a subjective measure AFAICT.
Else you might want an additional criteria, like
cyc2ns(1) (much less than) jiffies_to_usecs(1)*1000
(however you do that the best way)
so you don't pick something
that isn't substantially faster than the jiffy counter atleast?
Yours,
Linus Walleij
next prev parent reply other threads:[~2009-05-26 14:31 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 ` Linus Walleij [this message]
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
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=63386a3d0905260731m655bfee3q82a6f52d71fa3cef@mail.gmail.com \
--to=linus.ml.walleij@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=hskinnemoen@atmel.com \
--cc=lethal@linux-sh.org \
--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