lkml.org 
[lkml]   [2022]   [Jun]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.15 425/667] ASoC: sh: rz-ssi: Check return value of pm_runtime_resume_and_get()
    Date
    From: Heiner Kallweit <hkallweit1@gmail.com>

    [ Upstream commit f04b4fb47d83b110a5b007fb2eddea862cfeb151 ]

    The return value of pm_runtime_resume_and_get() needs to be checked to
    avoid a usage count imbalance in the error case. This fix is basically
    the same as 92c959bae2e5 ("reset: renesas: Fix Runtime PM usage"),
    and the last step before pm_runtime_resume_and_get() can be annotated
    as __must_check.

    Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
    Link: https://lore.kernel.org/r/9fed506d-b780-55cd-45a4-9bd2407c910f@gmail.com
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    sound/soc/sh/rz-ssi.c | 7 ++++++-
    1 file changed, 6 insertions(+), 1 deletion(-)

    diff --git a/sound/soc/sh/rz-ssi.c b/sound/soc/sh/rz-ssi.c
    index 16de2633a873..7379b1489e35 100644
    --- a/sound/soc/sh/rz-ssi.c
    +++ b/sound/soc/sh/rz-ssi.c
    @@ -1025,7 +1025,12 @@ static int rz_ssi_probe(struct platform_device *pdev)

    reset_control_deassert(ssi->rstc);
    pm_runtime_enable(&pdev->dev);
    - pm_runtime_resume_and_get(&pdev->dev);
    + ret = pm_runtime_resume_and_get(&pdev->dev);
    + if (ret < 0) {
    + pm_runtime_disable(ssi->dev);
    + reset_control_assert(ssi->rstc);
    + return dev_err_probe(ssi->dev, ret, "pm_runtime_resume_and_get failed\n");
    + }

    ret = devm_snd_soc_register_component(&pdev->dev, &rz_ssi_soc_component,
    rz_ssi_soc_dai,
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-06-07 21:32    [W:3.577 / U:0.124 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site