crypto: omap-sham - Use pm_runtime_resume_and_get() in omap_sham_probe()

[ Upstream commit 7bcceb4c9896b1b672b636ae70fe75110d6bf1ad ]

omap_sham_probe() calls pm_runtime_get_sync() and calls
pm_runtime_put_sync() latter to put usage_counter. However,
pm_runtime_get_sync() will increment usage_counter even it failed. Fix
it by replacing it with pm_runtime_resume_and_get() to keep usage
counter balanced.

Fixes: b359f034c8 ("crypto: omap-sham - Convert to use pm_runtime API")
Signed-off-by: Shang XiaoJing <shangxiaojing@huawei.com>
Acked-by: Mark Greer <mgreer@animalcreek.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Shang XiaoJing 2022-11-24 14:49:40 +08:00 committed by Greg Kroah-Hartman
parent c21a09ed1e
commit 7917484c99

View File

@ -2141,7 +2141,7 @@ static int omap_sham_probe(struct platform_device *pdev)
pm_runtime_enable(dev); pm_runtime_enable(dev);
pm_runtime_irq_safe(dev); pm_runtime_irq_safe(dev);
err = pm_runtime_get_sync(dev); err = pm_runtime_resume_and_get(dev);
if (err < 0) { if (err < 0) {
dev_err(dev, "failed to get sync: %d\n", err); dev_err(dev, "failed to get sync: %d\n", err);
goto err_pm; goto err_pm;