Thread (20 messages) 20 messages, 5 authors, 2011-05-03

Architecture specific implementations for tickless kernel and deferrable timers

From: Russell King - ARM Linux <hidden>
Date: 2011-04-26 20:37:56

On Sun, Apr 24, 2011 at 07:50:55PM +0530, Vikram Narayanan wrote:
On Fri, Apr 22, 2011 at 8:43 AM, Jeff Ohlstein [off-list ref] wrote:
quoted
Vikram Narayanan wrote:
quoted
And also, are clocksoure and clockevents dependent on each other? I
see in some platforms, that they have used 2 different timers for the
above. Can a same clock be used for both clocksource and clockevents?
Please throw some light on this. If it can be used so, what ties up
the clocksource and clockevent?
You can look at msm for an example of a single timer being used both as
a clocksource and a clockevent. We end up shutting off the clocksource
whenever we shut down the clockevent. This does cause some issues.
Switching clocksources at runtime does not work. It will also cause
problems if you implement your own sched_clock function, as it will have
little choice but to return a stale cached value whenever the clockevent
is disabled, such as in the suspend path.
Thanks for the example. I will refer to that. And I have another
question, If dynamic ticks are implemented, say if I am using the same
clocksource and clockevent, the wall time will only be updated at that
dyn_tick interval. Will that create any issue? or should I use a
constant source for the clocksource? or how to handle this in an
effective way.
* Clocksource and clockevents with the same timer.
* Also I want to make use of the tickless kernel functionality.
The only way to have a stable time source is to have a stable clocksource
- one which is never stopped or otherwise messed around with.  If you
try to combine clocksource and clockevent with one-shot mode, where
the clocksource part is reset each time a new event is set, you'll probably
soon end up with time going screwy.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help