]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
crypto: sa2ul - Fix PM reference leak in sa_ul_probe()
authorShixin Liu <liushixin2@huawei.com>
Thu, 8 Apr 2021 07:18:37 +0000 (15:18 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 12 May 2021 06:37:18 +0000 (08:37 +0200)
[ Upstream commit 13343badae093977295341d5a050f51ef128821c ]

pm_runtime_get_sync will increment pm usage counter even it failed.
Forgetting to putting operation will result in reference leak here.
Fix it by replacing it with pm_runtime_resume_and_get to keep usage
counter balanced.

Signed-off-by: Shixin Liu <liushixin2@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/crypto/sa2ul.c

index f300b0a5958a595f4a40f1637fb4534343d667e9..d7b1628fb484857b1847cf508afdf9b2d6e17af2 100644 (file)
@@ -2350,7 +2350,7 @@ static int sa_ul_probe(struct platform_device *pdev)
        dev_set_drvdata(sa_k3_dev, dev_data);
 
        pm_runtime_enable(dev);
-       ret = pm_runtime_get_sync(dev);
+       ret = pm_runtime_resume_and_get(dev);
        if (ret < 0) {
                dev_err(&pdev->dev, "%s: failed to get sync: %d\n", __func__,
                        ret);