On Thu, 15 Feb 2018, Frederic Weisbecker wrote: > When a CPU runs in full dynticks mode, a 1Hz tick remains in order to > keep the scheduler stats alive. However this residual tick is a burden > for bare metal tasks that can't stand any interruption at all, or want > to minimize them. > > The usual boot parameters "nohz_full=" or "isolcpus=nohz" will now > outsource these scheduler ticks to the global workqueue so that a > housekeeping CPU handles those remotely. The sched_class::task_tick() > implementations have been audited and look safe to be called remotely > as the target runqueue and its current task are passed in parameter > and don't seem to be accessed locally.
That scares me a bit. Not for the current state of affairs, but we want to ensure that this still works in 2 years from now So at least you want to add a comment to task_tick() which explains the constraints which come with the remote tick. Other than that this looks good! Reviewed-by: Thomas Gleixner <t...@linutronix.de>