Re: [PATCH 4/6] sched/isolation: Offload residual 1Hz scheduler tick

From: Thomas Gleixner
Date: Sat Feb 17 2018 - 05:50:56 EST


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 <tglx@xxxxxxxxxxxxx>