From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: "Michel Dänzer" <michel@tungstengraphics.com>
Cc: linuxppc-dev@ozlabs.org, Ingo Molnar <mingo@elte.hu>,
Peter Zijlstra <a.p.zijlstra@chello.nl>
Subject: Re: ppc32: Weird process scheduling behaviour with 2.6.24-rc
Date: Thu, 24 Jan 2008 19:18:05 +1100 [thread overview]
Message-ID: <1201162685.6815.53.camel@pasglop> (raw)
In-Reply-To: <1201094056.9052.52.camel@thor.sulgenrain.local>
On Wed, 2008-01-23 at 14:14 +0100, Michel Dänzer wrote:
> > Does ppc32 (or your instance thereof) have a high resolution
> > sched_clock()?
>
> I'm not sure (FWIW, we did get support for NO_HZ and HIGH_RES_TIMERS
> in
> 2.6.24-rc as well, but playing with these config options and even
> reverting the code didn't seem to have any effect), can someone from
> the
> linuxppc-dev list answer this?
We do have a hires sched_clock() based on the processor internal
timebase and scaled to ns. Maybe we screwed something up there ? The
implementation is in arch/powerpc/kernel/timer.c
/*
* Scheduler clock - returns current time in nanosec units.
*
* Note: mulhdu(a, b) (multiply high double unsigned) returns
* the high 64 bits of a * b, i.e. (a * b) >> 64, where a and b
* are 64-bit unsigned numbers.
*/
unsigned long long sched_clock(void)
{
if (__USE_RTC())
return get_rtc();
return mulhdu(get_tb() - boot_tb, tb_to_ns_scale) << tb_to_ns_shift;
}
(You can mostly ignore the RTC() case which is the native ns clock of
the old 601 processor.
Ben.
next prev parent reply other threads:[~2008-01-24 8:18 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-18 12:34 ppc32: Weird process scheduling behaviour with 2.6.24-rc Michel Dänzer
2008-01-22 14:56 ` Michel Dänzer
2008-01-23 12:18 ` Michel Dänzer
2008-01-23 12:36 ` Peter Zijlstra
2008-01-23 13:14 ` Michel Dänzer
2008-01-24 8:18 ` Benjamin Herrenschmidt [this message]
2008-01-24 8:46 ` Benjamin Herrenschmidt
2008-01-25 10:57 ` Michel Dänzer
2008-01-23 12:42 ` Peter Zijlstra
2008-01-25 6:54 ` Benjamin Herrenschmidt
2008-01-25 7:03 ` Benjamin Herrenschmidt
2008-01-25 7:25 ` Benjamin Herrenschmidt
2008-01-25 8:50 ` Peter Zijlstra
2008-01-26 4:07 ` Srivatsa Vaddagiri
2008-01-26 4:13 ` Benjamin Herrenschmidt
2008-01-26 5:07 ` Srivatsa Vaddagiri
2008-01-26 5:15 ` Benjamin Herrenschmidt
2008-01-26 9:26 ` Srivatsa Vaddagiri
2008-01-26 5:07 ` Srivatsa Vaddagiri
2008-01-27 16:13 ` Michel Dänzer
2008-01-28 4:25 ` Benjamin Herrenschmidt
2008-01-28 8:16 ` Michel Dänzer
2008-01-28 8:50 ` Peter Zijlstra
2008-01-28 9:14 ` Michel Dänzer
2008-01-28 12:11 ` Srivatsa Vaddagiri
2008-01-28 12:32 ` Ingo Molnar
2008-01-28 12:53 ` Peter Zijlstra
2008-01-28 12:56 ` Ingo Molnar
2008-01-29 10:14 ` Michel Dänzer
2008-01-28 13:11 ` Srivatsa Vaddagiri
2008-01-25 11:34 ` Michel Dänzer
2008-01-25 15:04 ` Michel Dänzer
2008-01-25 21:10 ` Benjamin Herrenschmidt
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=1201162685.6815.53.camel@pasglop \
--to=benh@kernel.crashing.org \
--cc=a.p.zijlstra@chello.nl \
--cc=linuxppc-dev@ozlabs.org \
--cc=michel@tungstengraphics.com \
--cc=mingo@elte.hu \
/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;
as well as URLs for NNTP newsgroup(s).