]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/msm/dsi: Use pm_runtime_resume_and_get to prevent refcnt leaks
authorKonrad Dybcio <konrad.dybcio@linaro.org>
Tue, 20 Jun 2023 11:43:20 +0000 (13:43 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 25 Jan 2024 22:52:42 +0000 (14:52 -0800)
[ Upstream commit 3d07a411b4faaf2b498760ccf12888f8de529de0 ]

This helper has been introduced to avoid programmer errors (missing
_put calls leading to dangling refcnt) when using pm_runtime_get, use it.

While at it, start checking the return value.

Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Fixes: 5c8290284402 ("drm/msm/dsi: Split PHY drivers to separate files")
Patchwork: https://patchwork.freedesktop.org/patch/543350/
Link: https://lore.kernel.org/r/20230620-topic-dsiphy_rpm-v2-1-a11a751f34f0@linaro.org
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/msm/dsi/phy/dsi_phy.c

index 6a917fe69a833dbed017b82324631277fb2951d7..4b5b0a4b051b0e5739eb941dacf7ed2da1366580 100644 (file)
@@ -588,7 +588,9 @@ static int dsi_phy_enable_resource(struct msm_dsi_phy *phy)
        struct device *dev = &phy->pdev->dev;
        int ret;
 
-       pm_runtime_get_sync(dev);
+       ret = pm_runtime_resume_and_get(dev);
+       if (ret)
+               return ret;
 
        ret = clk_prepare_enable(phy->ahb_clk);
        if (ret) {