Re: [PATCH] Input: omap-keypad - fix runtime pm imbalance on error

From: Dmitry Torokhov
Date: Wed May 20 2020 - 13:02:42 EST


Hi Dinghao,

On Wed, May 20, 2020 at 6:35 AM Dinghao Liu <dinghao.liu@xxxxxxxxxx> wrote:
>
> pm_runtime_get_sync() increments the runtime PM usage counter even
> the call returns an error code. Thus a pairing decrement is needed
> on the error handling path to keep the counter balanced.

This is a very surprising behavior and I wonder if this should be
fixed in the PM core (or the required cleanup steps need to be called
out in the function description). I also see that a few drivers that
handle this situation correctly (?) call pm_runtime_put_noidle()
instead of pm_runtime_put_sync() in the error path.

Rafael, do you have any guidance here?

Thanks.

--
Dmitry