Re: [PATCH v7 06/11] nohz: task_isolation: allow tick to be fully disabled

From: Andy Lutomirski
Date: Mon Sep 28 2015 - 16:41:24 EST


On Mon, Sep 28, 2015 at 11:17 AM, Chris Metcalf <cmetcalf@xxxxxxxxxx> wrote:
> While the current fallback to 1-second tick is still helpful for
> maintaining completely correct kernel semantics, processes using
> prctl(PR_SET_TASK_ISOLATION) semantics place a higher priority on
> running completely tickless, so don't bound the time_delta for such
> processes. In addition, due to the way such processes quiesce by
> waiting for the timer tick to stop prior to returning to userspace,
> without this commit it won't be possible to use the task_isolation
> mode at all.
>
> Removing the 1-second cap was previously discussed (see link
> below) and Thomas Gleixner observed that vruntime, load balancing
> data, load accounting, and other things might be impacted.
> Frederic Weisbecker similarly observed that allowing the tick to
> be indefinitely deferred just meant that no one would ever fix the
> underlying bugs. However it's at least true that the mode proposed
> in this patch can only be enabled on a nohz_full core by a process
> requesting task_isolation mode, which may limit how important it is
> to maintain scheduler data correctly, for example.

What goes wrong when a task enables this? Presumably either tasks
that enable it experience problems or performance issues or it should
always be enabled.

One possible issue: __vdso_clock_gettime with any of the COARSE clocks
as well as __vdso_time will break if the timekeeping code doesn't run
somewhere with reasonable frequency on some core. Hopefully this
always works.

--Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/