Lines Matching +full:no +full:- +full:tick +full:- +full:in +full:- +full:suspend

5 Further information can be found in the paper of the OLS 2006 talk "hrtimers
8 https://www.kernel.org/doc/ols/2006/ols2006v1-pages-333-346.pdf
11 http://www.cs.columbia.edu/~nahum/w6998/papers/ols2006-hrtimers-slides.pdf
14 changes in the time(r) related Linux subsystems. Figure #1 (p. 2) shows the
19 switched to the name "clock event devices" in meantime.
23 - hrtimer base infrastructure
24 - timeofday and clock source management
25 - clock event management
26 - high resolution timer functionality
27 - dynamic ticks
31 ---------------------------
34 the base implementation are covered in Documentation/timers/hrtimers.rst. See
40 - time ordered enqueueing into a rb-tree
41 - independent of ticks (the processing is based on nanoseconds)
45 -------------------------------------
48 code out of the architecture-specific areas into a generic management
49 framework, as illustrated in figure #3 (OLS slides p. 18). The architecture
51 sources, which are registered in the framework and selected on a quality based
58 Further information about the Generic Time Of Day framework is available in the
70 ----------------------
77 dependent code. This results in duplicated code across all architectures and
81 to touch all the architecture-specific implementations in order to provide new
95 structure with clock-specific property parameters and callback functions. The
98 includes the distinction of per-CPU and per-system global event devices.
100 System-level global event devices are used for the Linux periodic tick. Per-CPU
107 - system global periodic tick (jiffies update)
108 - cpu local update_process_times
109 - cpu local profiling
110 - cpu local next event interrupt (non periodic mode)
114 a function pointer in the device description structure, which has to be called
122 interrupt, clock event device notification service and support for suspend and
125 The framework adds about 700 lines of code which results in a 2KB increase of
127 code. The binary size decrease is in the range of 400 byte. We believe that the
131 The conversion of an architecture has no functional impact, but allows to
132 utilize the high resolution and dynamic tick functionalities without any change
136 adding the dynamic tick specific calls to the idle routine (a total of 3 lines
143 -----------------------------------
146 functionality, while making it possible would be difficult and would serve no
151 initialized, the system works in the usual low resolution periodic mode. The
163 dynamic ticks on i386 SMP systems which stop the local APIC in C3 power
169 decision is made per timer base and synchronized across per-cpu timer bases in
170 a support function. The design allows the system to utilize separate per-CPU
171 clock event devices for the per-CPU timer bases, but currently only one
172 reprogrammable clock event device per-CPU is utilized.
176 red-black tree to a separate double linked list and invokes the softirq
177 handler. An additional mode field in the hrtimer structure allows the system to
179 is restricted to code which can safely be executed in the hard interrupt
181 used by nanosleep. The advantage of executing the handler in the interrupt
182 context is the avoidance of up to two context switches - from the interrupted
186 Once a system has switched to high resolution mode, the periodic tick is
187 switched off. This disables the per system global periodic clock event device -
190 The periodic tick functionality is provided by an per-cpu hrtimer. The callback
191 function is executed in the next event interrupt context and updates jiffies
193 based periodic tick is designed to be extended with dynamic tick functionality.
195 timer and periodic events (jiffies tick, profiling, process accounting) on UP
200 separated from the tick bound timer softirq to allow accurate delivery of high
209 -------------
211 Dynamic ticks are the logical consequence of the hrtimer based periodic tick
215 - hrtimer_stop_sched_tick
216 - hrtimer_restart_sched_tick
217 - hrtimer_update_jiffies
221 wheel) and in case that the next event is further away than the next tick it
223 without worthless interruption by the periodic tick. The function is also
227 nearest event in the previous call to hrtimer_stop_sched_tick.
230 it calls schedule(). hrtimer_restart_sched_tick() resumes the periodic tick,
234 in the idle period to make sure that jiffies are up to date and the interrupt
237 The dynamic tick feature provides statistical values which are exported to
243 frequency profiling, and a complete removal of jiffies in the future.
247 extended to x86_64 and ARM already. Initial (work in progress) support is also