[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CALCETrXwRYH7x+xUtqyxrqL3Vj6Ez80Ztsc47HLdze5DDAzP8g@mail.gmail.com>
Date: Mon, 28 Sep 2015 16:40:56 -0400
From: Andy Lutomirski <luto@...capital.net>
To: Chris Metcalf <cmetcalf@...hip.com>
Cc: Gilad Ben Yossef <giladb@...hip.com>,
Steven Rostedt <rostedt@...dmis.org>,
Ingo Molnar <mingo@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Rik van Riel <riel@...hat.com>, Tejun Heo <tj@...nel.org>,
Frederic Weisbecker <fweisbec@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Christoph Lameter <cl@...ux.com>,
Viresh Kumar <viresh.kumar@...aro.org>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will.deacon@....com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v7 06/11] nohz: task_isolation: allow tick to be fully disabled
On Mon, Sep 28, 2015 at 11:17 AM, Chris Metcalf <cmetcalf@...hip.com> 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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists