On Mon, Feb 14, 2022 at 11:57:44AM +0100, Frederic Weisbecker wrote: > 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 Given a valid use case, getting that functionality back would be fine by me. But yes, properly merging RCU dynticks into context tracking would reduce the resulting idle-entry/exit performance penalty, so it would be good to do that first. Thanx, Paul