Re: Question about nohz and sysidle

From: Frederic Weisbecker
Date: Mon Feb 14 2022 - 06:22:15 EST


On Mon, Feb 14, 2022 at 05:40:55PM +0800, Yu Liao wrote:

Hi Yu Liao,

>
> On 2022/2/14 16:28, Yu Liao wrote:
> > Hi Frederic,
> >
> > I'm working on an issue about nohz. When NO_HZ_FULL is enabled, CPU 0
> > handles the timekeeping duty on behalf of all other CPUs, which means
> > CPU 0 never stop tick even in sysidle state. This is a powersaving
> > issue.
> >
> > I found your patchset (nohz: Support sysidle) in the below link.
> > https://lore.kernel.org/all/1406569056-30217-1-git-send-email-fweisbec@xxxxxxxxx/
> >
> > But these patches haven't been merged into mainline yet and sysidle
> > state detection has been removed by commit fe5ac724d81a (rcu: Remove
> > nohz_full full-system-idle state machine) as well.
> >
> > I tried your patches and it does work, why are we no longer working on
> > stopping timekeeping duty when all full dynticks CPUs are idle?

Because it was not a priority at that time. There were so many things to handle
first (and we are not even done yet) that we postponed that feature until
someone ever comes up with powersaving issues on nohz_full. We were waiting for
you :)

It's possible to unearth this. I think the first step will be to merge the
RCU dynticks counters into context tracking, something that was on my queue
anyway, and then revive this:

https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git/commit/?h=sysidle.2017.05.11a&id=fe5ac724d81a3c7803e60c2232718f212f3f38d4

Thanks.