From: Thomas Gleixner <tglx@linutronix.de>
To: Roman Zippel <zippel@linux-m68k.org>
Cc: johnstul@us.ibm.com, linux-kernel@vger.kernel.org,
Andrew Morton <akpm@osdl.org>, Ingo Molnar <mingo@elte.hu>
Subject: Re: [PATCH 0/5] clocksource patches
Date: Tue, 04 Apr 2006 06:53:42 +0200 [thread overview]
Message-ID: <1144126422.5344.418.camel@localhost.localdomain> (raw)
In-Reply-To: <Pine.LNX.4.64.0604031431220.25825@scrub.home>
On Mon, 2006-04-03 at 21:54 +0200, Roman Zippel wrote:
> Another general comment from an arch/driver specific perspective: right
> now everything is rather concentrated on getting the time, but AFAICT it's
> more common that the subsystem which is used to read the time is also used
> as timer (i.e. for the scheduler tick), this means the clocksource driver
> should also include the interrupt setup.
I don't think so. Coupling the clock sources to clock event sources is
wrong. In many systems the clock event source delivering the next event
interrupt - either periodic or per event programmed - is independend
from the clock source which is used to read the time.
Also we want to distribute multiple clock event sources for various
services. Hardwiring those into combos is counter productive.
> i386 is currently rather hardcoded to use the i8253 timer, but AFAIK it
> would be desirable to e.g. use HPET for that (especially for hrtimer).
> Something like TSC should internally use another clocksource to provide
> the timer interrupt.
This is exactly the result of such an artificial combo. "Use internally
something else." Thats fundamentally wrong and violates every basic rule
of abstraction.
> Anyway, i386 is quite a mess here right now and I can
> understand that you wanted to stay away from it with the generic
> gettimeofday infrastructure. :-)
He ? John addressed the clock source (timeofday) related problem in
x386. He never claimed that his timeofday code is solving the clock
event source problem. gettimeofday() exactly does what it says: it gets
the time of day. And it does it independend of any interrupt source in
the first place.
Clock event sources need their own independent abstraction layer, as one
can be found in my high resolution timer patch queue. There is
interaction between the timekeeping and the next event interrupt
programming, but it's important to keep them seperate.
How should a combo solution allow to add special hardware, which
provides only one of the services ? By using "something else
internally" ? No, thanks.
tglx
next prev parent reply other threads:[~2006-04-04 4:53 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-03 19:54 [PATCH 0/5] clocksource patches Roman Zippel
2006-04-03 20:08 ` Roman Zippel
2006-04-04 4:53 ` Thomas Gleixner [this message]
2006-04-04 19:06 ` Roman Zippel
2006-04-05 11:22 ` Thomas Gleixner
2006-04-05 13:40 ` Ingo Molnar
2006-04-05 20:44 ` Roman Zippel
2006-04-05 22:18 ` Thomas Gleixner
2006-04-07 17:57 ` john stultz
2006-04-27 20:33 ` Roman Zippel
2006-05-06 2:04 ` john stultz
2006-05-06 16:25 ` Roman Zippel
2006-05-08 18:33 ` john stultz
2006-05-08 21:15 ` Roman Zippel
2006-05-09 0:29 ` john stultz
2006-05-09 22:48 ` Roman Zippel
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=1144126422.5344.418.camel@localhost.localdomain \
--to=tglx@linutronix.de \
--cc=akpm@osdl.org \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=zippel@linux-m68k.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