Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2 |
|
#
8fbc264d |
| 09-Jun-2020 |
Matthew Dillon <dillon@apollo.backplane.com> |
kernel - Refactor sysclock_t from 32 to 64 bits
* Refactor the core cpu timer API, changing sysclock_t from 32 to 64 bits. Provide a full 64-bit count from all sources.
* Implement muldivu64() u
kernel - Refactor sysclock_t from 32 to 64 bits
* Refactor the core cpu timer API, changing sysclock_t from 32 to 64 bits. Provide a full 64-bit count from all sources.
* Implement muldivu64() using gcc's 128-bit integer type. This functions takes three 64-bit valus, performs (a * b) / d using a 128-bit intermediate calculation, and returns a 64-bit result.
Change all timer scaling functions to use this function which effectively gives systimers the capability of handling any timeout that fits 64 bits for the timer's resolution.
* Remove TSC frequency scaling, it is no longer needed. The TSC timer is now used at its full resolution.
* Use atomic_fcmpset_long() instead of a clock spinlock when updating the msb bits for hardware timer sources less than 64 bits wide.
* Properly recalculate existing systimers when the clock source is changed. Existing systimers were not being recalculated, leading to the system failing to boot when time sources had radically different clock frequencies.
show more ...
|
Revision tags: v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2 |
|
#
fcf6efef |
| 02-Mar-2019 |
Sascha Wildner <saw@online.de> |
kernel: Remove numerous #include <sys/thread2.h>.
Most of them were added when we converted spl*() calls to crit_enter()/crit_exit(), almost 14 years ago. We can now remove a good chunk of them agai
kernel: Remove numerous #include <sys/thread2.h>.
Most of them were added when we converted spl*() calls to crit_enter()/crit_exit(), almost 14 years ago. We can now remove a good chunk of them again for where crit_*() are no longer used.
I had to adjust some files that were relying on thread2.h or headers that it includes coming in via other headers that it was removed from.
show more ...
|
Revision tags: v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc |
|
#
6b91ee43 |
| 14-Feb-2017 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
kern: Add cpucounter which returns 64bit monotonic counter.
It will be used to: - Simplify per-cpu raw time extraction. - ALTQ machclk. - Per packet timestamp for CoDel.
As of this commit, dummy cp
kern: Add cpucounter which returns 64bit monotonic counter.
It will be used to: - Simplify per-cpu raw time extraction. - ALTQ machclk. - Per packet timestamp for CoDel.
As of this commit, dummy cpucounter, which falls back to cputimer, and TSC cpucounter are implemented.
show more ...
|
#
0087561d |
| 24-Jan-2017 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
cputimer: Initialize explicitly.
|
Revision tags: v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0 |
|
#
42098fc3 |
| 14-Jun-2016 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
cputimer: Add per-cpu handler and private data for interrupt cputimer.
|
Revision tags: v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5 |
|
#
f3f3eadb |
| 12-Mar-2015 |
Sascha Wildner <saw@online.de> |
kernel: Move semicolon from the definition of SYSINIT() to its invocations.
This affected around 70 of our (more or less) 270 SYSINIT() calls.
style(9) advocates the terminating semicolon to be sup
kernel: Move semicolon from the definition of SYSINIT() to its invocations.
This affected around 70 of our (more or less) 270 SYSINIT() calls.
style(9) advocates the terminating semicolon to be supplied by the invocation too, because it can make life easier for editors and other source code parsing programs.
show more ...
|
Revision tags: v4.0.4, v4.0.3, v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1 |
|
#
e80ea409 |
| 01-Feb-2014 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
cputimer/intr: Move powersaving intr cputimer switching to kern_cputimer.c
While I'm here fix several bugs: - Don't take ERESTART as error - Use serializer to protect the number of power saving requ
cputimer/intr: Move powersaving intr cputimer switching to kern_cputimer.c
While I'm here fix several bugs: - Don't take ERESTART as error - Use serializer to protect the number of power saving request. Using atomic_fetchadd_int is not enough here: The first power saving request could fail. However, before its failure, other power saving request could be successful, since the intr cputimer switch is skipped.
show more ...
|
#
3b24650b |
| 10-Jan-2014 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
cputimer/intr: Restart only if the intr cputimer is changed
|
Revision tags: v3.6.0, v3.7.1, v3.6.0rc, v3.7.0, v3.4.3 |
|
#
e2addb3d |
| 19-Jun-2013 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
cputimer: The freq should be sysclock_t
This prepares for 64bit sysclock_t
|
Revision tags: v3.4.2, v3.4.0, v3.4.1, v3.4.0rc, v3.5.0, v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3, v3.0.2, v3.0.1, v3.1.0, v3.0.0 |
|
#
86d7f5d3 |
| 26-Nov-2011 |
John Marino <draco@marino.st> |
Initial import of binutils 2.22 on the new vendor branch
Future versions of binutils will also reside on this branch rather than continuing to create new binutils branches for each new version.
|
Revision tags: v2.12.0, v2.13.0, v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0, v2.5.1, v2.4.1, v2.5.0, v2.4.0, v2.3.2 |
|
#
ef612539 |
| 17-May-2009 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
Add interrupt cputimer interface.
- Better abstraction - Easier to extend, e.g. add another interrupt cputimer - No lapic timer pollution in isa/clock.c
|
Revision tags: v2.3.1, v2.2.1, v2.2.0, v2.3.0, v2.1.1, v2.0.1 |
|
#
3641b7ca |
| 05-Jun-2008 |
Sascha Wildner <swildner@dragonflybsd.org> |
* Fix some cases where NULL was used but 0 was meant (and vice versa).
* Remove some bogus casts of NULL to (void *).
|
#
d8fdd978 |
| 09-Jun-2005 |
Eirik Nygaard <eirikn@dragonflybsd.org> |
Replace the hand rolled linked list with a SLIST.
|
#
1636ba19 |
| 01-Jun-2005 |
Matthew Dillon <dillon@dragonflybsd.org> |
Add a simple API tha allows the interrupt timer to efficiently convert system hardware ticks (e.g. ACPI at 3x the frequency) to interrupt timer ticks (e.g. 8254 timer 0).
Remove the sysctl code that
Add a simple API tha allows the interrupt timer to efficiently convert system hardware ticks (e.g. ACPI at 3x the frequency) to interrupt timer ticks (e.g. 8254 timer 0).
Remove the sysctl code that allows the system hardware timer to be selected after boot.
show more ...
|
#
dd6bed11 |
| 01-Jun-2005 |
Matthew Dillon <dillon@dragonflybsd.org> |
Disable the ability to change the system clock with a sysctl. More work is needed before this will work (if we ever want to make it work, that is). The system clock selected at boot time is the one
Disable the ability to change the system clock with a sysctl. More work is needed before this will work (if we ever want to make it work, that is). The system clock selected at boot time is the one that will be used.
show more ...
|
#
5ee041ae |
| 01-Jun-2005 |
Matthew Dillon <dillon@dragonflybsd.org> |
More cleanups, add the API implementation to select the system clock.
|