Re: [PATCH v2 1/3] thermal: gov_power_allocator: Allow binding without cooling devices

From: Rafael J. Wysocki
Date: Wed Apr 03 2024 - 10:41:33 EST


On Wed, Apr 3, 2024 at 2:44 PM Lukasz Luba <lukasz.luba@xxxxxxx> wrote:
>
>
>
> On 4/3/24 12:31, Nikita Travkin via B4 Relay wrote:
> > From: Nikita Travkin <nikita@xxxxxxx>
> >
> > IPA was recently refactored to split out memory allocation into a
> > separate funciton. That funciton was made to return -EINVAL if there is
> > zero power_actors and thus no memory to allocate. This causes IPA to
> > fail probing when the thermal zone has no attached cooling devices.
> >
> > Since cooling devices can attach after the thermal zone is created and
> > the governer is attached to it, failing probe due to the lack of cooling
> > devices is incorrect.
> >
> > Change the allocate_actors_buffer() to return success when there is no
> > cooling devices present.
> >
> > Fixes: 912e97c67cc3 ("thermal: gov_power_allocator: Move memory allocation out of throttle()")
> > Signed-off-by: Nikita Travkin <nikita@xxxxxxx>
> > ---
> > drivers/thermal/gov_power_allocator.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/thermal/gov_power_allocator.c b/drivers/thermal/gov_power_allocator.c
> > index 1b17dc4c219c..ec637071ef1f 100644
> > --- a/drivers/thermal/gov_power_allocator.c
> > +++ b/drivers/thermal/gov_power_allocator.c
> > @@ -606,7 +606,7 @@ static int allocate_actors_buffer(struct power_allocator_params *params,
> >
> > /* There might be no cooling devices yet. */
> > if (!num_actors) {
> > - ret = -EINVAL;
> > + ret = 0;
> > goto clean_state;
> > }
> >
> >
>
> LGTM
>
> Reviewed-by: Lukasz Luba <lukasz.luba@xxxxxxx>

Applied as 6.9-rc material along with the [2/3], thanks!