Re: [PATCH 4/4] PM / devfreq: Handle monitor start/stop in the devfreq core

From: Matthias Kaehlcke
Date: Thu Feb 14 2019 - 14:28:59 EST


Hi Chanwoo,

On Thu, Feb 14, 2019 at 11:17:36PM +0900, Chanwoo Choi wrote:
> Hi Matthias,
>
> As I commented on the first patch, it is not possible to call some codes
> according to the intention of each governor between 'devfreq_moniotr_*()'
> and some codes which are executed before or after 'devfreq_moniotr_*()'
>
> For example, if some governor requires the following sequence,
> after this patch, it is not possible.
>
> case DEVFREQ_GOV_xxx:
> /* execute some code before devfreq_monitor_xxx() */
> devfreq_monitor_xxx()
> /* execute some code after devfreq_monitor_xxx() */

As for the suspend/resume case I agree that the patch introduces this
limitation, but I'm not convinced that this is an actual problem.

For governor_start(): why can't the governor execute the code
before polling started, does it make any difference to the governor
that a work is scheduled?

For governor_stop(): why would the governor require polling to be
active during stop? If it needs update_devfreq() to run (called by
devfreq_monitor()) it can call it directly, instead of waiting for the
monitor to run at some later time.

Cheers

Matthias