mirror of https://gitee.com/openkylin/linux.git
tick: Document tick_do_timer_cpu
Taken straight from a tglx email ;) Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
da554eba2e
commit
050ded1bba
|
@ -33,6 +33,21 @@ DEFINE_PER_CPU(struct tick_device, tick_cpu_device);
|
||||||
*/
|
*/
|
||||||
ktime_t tick_next_period;
|
ktime_t tick_next_period;
|
||||||
ktime_t tick_period;
|
ktime_t tick_period;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* tick_do_timer_cpu is a timer core internal variable which holds the CPU NR
|
||||||
|
* which is responsible for calling do_timer(), i.e. the timekeeping stuff. This
|
||||||
|
* variable has two functions:
|
||||||
|
*
|
||||||
|
* 1) Prevent a thundering herd issue of a gazillion of CPUs trying to grab the
|
||||||
|
* timekeeping lock all at once. Only the CPU which is assigned to do the
|
||||||
|
* update is handling it.
|
||||||
|
*
|
||||||
|
* 2) Hand off the duty in the NOHZ idle case by setting the value to
|
||||||
|
* TICK_DO_TIMER_NONE, i.e. a non existing CPU. So the next cpu which looks
|
||||||
|
* at it will take over and keep the time keeping alive. The handover
|
||||||
|
* procedure also covers cpu hotplug.
|
||||||
|
*/
|
||||||
int tick_do_timer_cpu __read_mostly = TICK_DO_TIMER_BOOT;
|
int tick_do_timer_cpu __read_mostly = TICK_DO_TIMER_BOOT;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue