Re: [PATCH V5] powercap/drivers/idle_injection: Add an idle injection framework

From: Viresh Kumar
Date: Fri Jun 08 2018 - 00:48:49 EST

On 07-06-18, 16:11, Daniel Lezcano wrote:
> >> I'm wondering if we can have a CPU hotplugged right after the
> >> 'put_online_cpus', resulting in the 'should park' flag set and then the
> >> thread goes in the kthread_parkme instead of jumping back the idle
> >> injection function and decrease the count, leading up to the timer not
> >> being set again.
> >
> > True. That looks like a valid problem to me as well.
> >
> > What about starting the hrtimer right from this routine itself, after taking
> > into account running-time, idle-time, delay, etc ? That would get rid of the
> > count stuff, this get_online_cpus(), etc.
> >
> > Even if we restart the next play-idle cycle a bit early or with some delay, sky
> > wouldn't fall :)
> We won't be able to call completion() in this case.

I was just having a look at smpboot.h and saw the park/unpark callbacks. I think
you can very much use them to align things with CPU hotplug.