svn commit: r213985 - head/sys/sparc64/sparc64
jhb at freebsd.org
Mon Oct 18 14:37:06 UTC 2010
On Sunday, October 17, 2010 12:46:54 pm Marius Strobl wrote:
> Author: marius
> Date: Sun Oct 17 16:46:54 2010
> New Revision: 213985
> URL: http://svn.freebsd.org/changeset/base/213985
> - In oneshot-mode it doesn't make sense to try to compensate the clock
> drift in order to achieve a more stable clock as the tick intervals may
> vary in the first place. In fact I haven't seen this code kick in when
> in oneshot-mode so just skip it in that case.
> - There's no need to explicitly stop the (S)TICK counter in oneshot-mode
> with every tick as it just won't trigger again with the (S)TICK compare
> register set to a value in the past (with a wrap-around once every ~195
> years of uptime at 1.5 GHz this isn't something we have to worry about
> in practice).
> - Given that we'll disable interrupts completely anyway there's no
> need to enter critical sections.
This last is not entirely true. The purpose of the critical section is to
prevent the kernel from preempting to the softclock swi thread until all of
the hardclock handler has finished execution. Thus, places that actually
actually call hardclock() should probably still be wrapped in a critical
More information about the svn-src-all