On Mon, 28 Nov 2016 22:39:07 +0100 "Rafael J. Wysocki" <[email protected]> wrote:
> On Mon, Nov 28, 2016 at 10:33 PM, Jacob Pan > <[email protected]> wrote: > > From: Peter Zijlstra <[email protected]> > > > > Idle injection drivers such as Intel powerclamp and ACPI PAD > > drivers use realtime tasks to take control of CPU then inject idle. > > There are two issues with this approach: > > > > 1. Low efficiency: injected idle task is treated as busy so sched > > ticks do not stop during injected idle period, the result of these > > unwanted wakeups can be ~20% loss in power savings. > > > > 2. Idle accounting: injected idle time is presented to user as > > busy. > > > > This patch addresses the issues by introducing a new PF_IDLE flag > > which allows any given task to be treated as idle task while the > > flag is set. Therefore, idle injection tasks can run through the > > normal flow of NOHZ idle enter/exit to get the correct accounting > > as well as tick stop when possible. > > > > The implication is that idle task is then no longer limited to PID > > == 0. > > > > Acked-by: Ingo Molnar <[email protected]> > > Signed-off-by: Peter Zijlstra <[email protected]> > > Signed-off-by: Jacob Pan <[email protected]> > > Have you made any changes to the original Peter's patch, or is this > just a resend of that? No changes made to Peter's patch. I just rebased to v4.9-rc7 and tested it.

