Messages in this thread Patch in this message | | | From | Dinghao Liu <> | Subject | [PATCH] crypto: sun8i-ce - fix runtime pm imbalance on error | Date | Wed, 20 May 2020 15:54:49 +0800 |
| |
pm_runtime_get_sync() increments the runtime PM usage counter even it returns an error code. Thus a pairing decrement is needed on the error handling path to keep the counter balanced.
Signed-off-by: Dinghao Liu <dinghao.liu@zju.edu.cn> --- drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c b/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c index 3e4e4bbda34c..18f0f251204c 100644 --- a/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c +++ b/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c @@ -598,8 +598,10 @@ static int sun8i_ce_probe(struct platform_device *pdev) goto error_alg; err = pm_runtime_get_sync(ce->dev); - if (err < 0) + if (err < 0) { + pm_runtime_put_sync(ce->dev); goto error_alg; + } v = readl(ce->base + CE_CTR); v >>= CE_DIE_ID_SHIFT; -- 2.17.1
| |