High Resolution Timers in Low Resolution Mode

What if no high-resolution clocks are available? In this case, expiring high resolution timers is initiated from the hrtimer_run_queues, which is called by the high-resolution timer softIRQ HRTIMER_SOFTIRQ (since softIRQ processing is based on low-resolution timers in this case, the mechanism does not provide any high-resolution capabilities naturally). The code flow diagram is depicted in Figure 15-15. Note that this is a simplified version. In reality, the function is more involved because switching from low- to highresolution mode is started from this place. However, these problems will not bother us now; the required extensions are discussed in Section 15.4.5.

hrtimer_run_queuesI

hrtimer_get_softirq_timeI

run_hrtimer_queue

Iterate over all bases

Continue reading here: Figure 1515 Code flow diagram for hrtimerrunqueues

Was this article helpful?

0 0