From nobody Fri Dec 19 18:47:05 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id BF2C3CDB46E for ; Thu, 12 Oct 2023 13:03:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1378478AbjJLND0 (ORCPT ); Thu, 12 Oct 2023 09:03:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52576 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1347249AbjJLNDY (ORCPT ); Thu, 12 Oct 2023 09:03:24 -0400 Received: from out203-205-221-202.mail.qq.com (out203-205-221-202.mail.qq.com [203.205.221.202]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B3DA8BA for ; Thu, 12 Oct 2023 06:03:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1697115799; bh=hvsAf3IGRqX1DpOH2B+0eu/3cS+DbSNmEVlnCQEwAPA=; h=From:To:Cc:Subject:Date; b=xIVqlAI+MMxWHV8Ql/OrHa1B2a9KW0AkuRe692cE4KFTPhzGM/0YN6tubED79I2vt P1jj/JOi71l5ClqRCRKFOvYhDxMdNCnVE+/0N3Mfr5Al9RewW43uhLlcLmcABSXjwW dVglKrq7NIhWWe/Veo8ighGwduHw9ucRdNGDsO1k= Received: from KernelDevBox.byted.org ([180.184.51.134]) by newxmesmtplogicsvrszc2-1.qq.com (NewEsmtp) with SMTP id D0812F3; Thu, 12 Oct 2023 21:03:16 +0800 X-QQ-mid: xmsmtpt1697115796tm51ic8m3 Message-ID: X-QQ-XMAILINFO: MBbh9ZpQ5zEXVx6UGxhPICBGQ86jjAY9/rzQHXsVFdPVPnpl/tB3oiG+Emdu+m Af8IFJAW+IPI+tPgqlogsl8cZSmYOfarhikPKuLw6GNlLlRBXiCzQ3yhJoc9g/KiwI3LWrptYut4 AT9EkS7Yq+6s6lHZ1IfYQHC5LHtxe+vDZs/fZQDr56MWt1WPT8QFxYseqKyC537yTXVML05U1OAn rv+38rBztGRrs4gyx43dxflMJFiGm/nWOK/DTRXu0H8ybJzRXiw2o19n7wjqSjkuxAfj8b9xal/K fXvSrzy31NuFEUTO462fB/ddtKCn8V1wDu3t+e+8zlcwnlrxerkk7abcOobEPDMNNK9AA0Yn1YdP xgk++wJrDjRqf3YuOXmsFoeGiK7fG4B5CaVqH/EGN+kWf7e1kaUUy22aevWiidzJrTnWPX2aAqQ8 pgt1LXMdukqp3pZamL46HfVhssBkaIrOM5Uy6Gpazi5WK0lPzayrFNPDFLQ0cCxpvmKBDANQvjAP qy98k1gLDddXVcyQEh/yCiECF2Ktbq67xY4q4xRMvkjilRurg7ZdNndvnOFTto9a7oB3I4A1puaD fXNLBe9wo8gAmLwjnPfhK4vz96MGPGEP5T5cCQsCHH42wA2SKbPs+J2kw6AtQDBvLVeQrWU5JSyp hAZ/+2gh805x6770Kz3SS7NmH8nPRNPZIAmSbHt/MRIILY98sSim/p/UJ8IThaQTeFuDkNor832D TIOnCML28W+RWsXp2Isajvtym5vngbFEgSyeBTPpHEvtge0v8D3HB9+sYYuC5bbo8jQk5tCFgRDo 5J5esf0wjCJgPOXd+6GFzzrfHy5oovlBaofAjd/cV8t4BtWU3wa3S1xFJuVVFEntxGzhc2Ss4CLH 2EO+BCHIsKWmToWrgK1oiqhmazziU6zftAREhaphL2RL7D6pjy5T0jHXItmossKVd4h34D1210s3 FSixcSEUPCy1/ih1b+OaBXu2wPoUL+91Gp3KcJhFtNFaNOXyqHvV1NKYfP2vwO X-QQ-XMRINFO: OWPUhxQsoeAVDbp3OJHYyFg= From: Zhang Shurong To: shengjiu.wang@gmail.com Cc: Xiubo.Lee@gmail.com, festevam@gmail.com, nicoleotsuka@gmail.com, lgirdwood@gmail.com, broonie@kernel.org, perex@perex.cz, tiwai@suse.com, alsa-devel@alsa-project.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Zhang Shurong Subject: [PATCH v2] ASoC: fsl: Fix PM disable depth imbalance in fsl_easrc_probe Date: Thu, 12 Oct 2023 21:03:15 +0800 X-OQ-MSGID: <20231012130315.3292117-1-zhang_shurong@foxmail.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The pm_runtime_enable will increase power disable depth. Thus a pairing decrement is needed on the error handling path to keep it balanced according to context. We fix it by calling pm_runtime_disable when error returns. Fixes: 955ac624058f ("ASoC: fsl_easrc: Add EASRC ASoC CPU DAI drivers") Signed-off-by: Zhang Shurong --- v1->v2: add Fixes tag sound/soc/fsl/fsl_easrc.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sound/soc/fsl/fsl_easrc.c b/sound/soc/fsl/fsl_easrc.c index ba62995c909a..ec53bda46a46 100644 --- a/sound/soc/fsl/fsl_easrc.c +++ b/sound/soc/fsl/fsl_easrc.c @@ -1966,17 +1966,21 @@ static int fsl_easrc_probe(struct platform_device *= pdev) &fsl_easrc_dai, 1); if (ret) { dev_err(dev, "failed to register ASoC DAI\n"); - return ret; + goto err_pm_disable; } =20 ret =3D devm_snd_soc_register_component(dev, &fsl_asrc_component, NULL, 0); if (ret) { dev_err(&pdev->dev, "failed to register ASoC platform\n"); - return ret; + goto err_pm_disable; } =20 return 0; + +err_pm_disable: + pm_runtime_disable(&pdev->dev); + return ret; } =20 static void fsl_easrc_remove(struct platform_device *pdev) --=20 2.30.2