Received: by 2002:a05:6359:c8b:b0:c7:702f:21d4 with SMTP id go11csp2129537rwb; Thu, 29 Sep 2022 06:38:36 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4ZDEIv9GU6nKfvpwK+Arpe+MN5abaXF9gf9eSu8+jj/2te/1KuKhNt7+hAuaWc5t1JHp09 X-Received: by 2002:a17:902:ce03:b0:178:3ba6:f731 with SMTP id k3-20020a170902ce0300b001783ba6f731mr3557674plg.115.1664458716062; Thu, 29 Sep 2022 06:38:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1664458716; cv=none; d=google.com; s=arc-20160816; b=lyGs054Uz5hfogb8JfdQyDjEPdao5dFisX2rZRP10npFqg95FuWvX1oLH2RtKXvDNj wCbrTPkSHMnO16SqgcYmwhBVFQWwrjhSBAzo6tmQtY/zwww11uHupx4o5Ma1Z6a41Bj7 tTNZ7Mm4Pe+NAJsTuz+IU27u8WuvuRrd9XJSelCD1Ew/OQrGIzfDVk9FU0mcKh0rvdHR OueuSvucAx4Vq5AUwIF2UXcaX1yPgtFcNlLJRsyePP0arcVB9EyQXBp9i7IokZLR5V5r 7lHYIDtzQCSzkglC+a4pDniZ7hCWFs7n1XOmYzyq0/mwOFbe6F3tVZ2SXoM09+tr4oPu ROEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=riQobyzwp2LcDSstTSNaZWBzD1tl8SlvgbLUTdoCvUU=; b=gaTs5nNqAATlSXXl3UWaD3AcE+IHlY7zQVfFyZpKJQWfZREnl0qyFpZ5vdApOJgm5g v34aU4lVfl8cwbNJe69/XQMHHX26Y8pymQxahcGKEhBMGYo1BEHA6I5D8p9Q/9dbtRhJ udaHdGwqB1+PdBy4zuSRFSgdxLUJTRJzys0vGLuS258yazpKzfRdn9TT/mUgS0UdCqQb 91rtZr5hASuS/JtdJNw6sZnu1dEMgaXJHkv4ifSTarkE9IadvdKeGkaa60KfnPuulLPH TCEdYlI1KiS19wr/R6eXXyEzCBPXMsm/siidY+/w6UtD9yhyGff24wg1GkObS+CHbRPK ctAQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=QjKSMj0m; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id oj5-20020a17090b4d8500b00200ae8c504dsi8198032pjb.65.2022.09.29.06.38.23; Thu, 29 Sep 2022 06:38:36 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=QjKSMj0m; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234778AbiI2NPv (ORCPT + 99 others); Thu, 29 Sep 2022 09:15:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38410 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234574AbiI2NPt (ORCPT ); Thu, 29 Sep 2022 09:15:49 -0400 Received: from mail-lj1-x22a.google.com (mail-lj1-x22a.google.com [IPv6:2a00:1450:4864:20::22a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CC5D610BB33 for ; Thu, 29 Sep 2022 06:15:43 -0700 (PDT) Received: by mail-lj1-x22a.google.com with SMTP id c7so1478460ljm.12 for ; Thu, 29 Sep 2022 06:15:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date; bh=riQobyzwp2LcDSstTSNaZWBzD1tl8SlvgbLUTdoCvUU=; b=QjKSMj0mf4wSynBHfJ3wgQvGLExaw8bbk0gGS9hrSkwoSz9BCL1/5u5Z6dTymVMzWo WDYScgqAyO6xh+eshaQ2IDe7D496We6Rg6ZCsiaFYgZWRX84Rpvn8npHheqbhWNE8T/6 7x+bY6bhT32sQ0jP6Yay/Bssx4DGdrYNt/GXdo9dSSbKERsewsCmHauXdR3P6aXSD541 jBtykxrSXE+Gowg2LlqLs6IfYlhFOkycWk8HsMNOYukLg0NrZLHL52WqF4VLENwllfFp 2jX2Z90j6hlKwI6DVYV2g8PlfO0qGi+4gH0uv7oC0rvehojOzwgo5SrcxUabTpyOikhW R0HA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date; bh=riQobyzwp2LcDSstTSNaZWBzD1tl8SlvgbLUTdoCvUU=; b=Fdbr7blr0f1a5GAjd4mE58uYJ2Qf4GPm+OdSDSPPIr3w+ECfwA2pg5B5MglQm5AN2o RKkY0oQFlaUnUtgAMg4I1yvWsSogVbE9FrFbgoSzyATzAtQ1x4YIw0MW8Zjdnl788Ort 9qz9qsctkPkJGuyl96M1OTd/fkik33Gi3odMszLWbRlPsdLCIBpQAjV8suDSJ555lgFM IiDDJsGCwrj2iuypB1c82ejwQS18JjB1ShosY2BiLNnvc/qkLQyjJERoWG67cW9ltwNY dTukX7/QE40Z3h/41pGBuhWjCeaMLy/3sBKzmoJzHOBVwkYT+Grvh0cPfPdtxH9/793I 9Sgg== X-Gm-Message-State: ACrzQf2/HN7pHcTxAG5piYL4Ig887uHYhIsssbCZATy3tGoN+R88eoOb 5fbQVNG9P7hsmxBRib6sfUTGINKNObkcxg== X-Received: by 2002:a05:651c:1546:b0:26d:9459:1a69 with SMTP id y6-20020a05651c154600b0026d94591a69mr1277613ljp.209.1664457341196; Thu, 29 Sep 2022 06:15:41 -0700 (PDT) Received: from krzk-bin.. (78-11-189-27.static.ip.netia.com.pl. [78.11.189.27]) by smtp.gmail.com with ESMTPSA id r1-20020ac25a41000000b00499fe9ce5f2sm783555lfn.175.2022.09.29.06.15.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Sep 2022 06:15:40 -0700 (PDT) From: Krzysztof Kozlowski To: Srinivas Kandagatla , Banajit Goswami , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Kai Vehmanen , Ranjani Sridharan , Cezary Rojewski , alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Cc: Krzysztof Kozlowski , Bard Liao , Pierre-Louis Bossart , stable@vger.kernel.org Subject: [PATCH] ASoC: wcd-mbhc-v2: Revert "ASoC: wcd-mbhc-v2: use pm_runtime_resume_and_get()" Date: Thu, 29 Sep 2022 15:15:28 +0200 Message-Id: <20220929131528.217502-1-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This reverts commit ddea4bbf287b6028eaa15a185d0693856956ecf2 ("ASoC: wcd-mbhc-v2: use pm_runtime_resume_and_get()"), because it introduced double runtime PM put if pm_runtime_get_sync() returns -EACCES: wcd934x-codec wcd934x-codec.3.auto: WCD934X Minor:0x1 Version:0x401 wcd934x-codec wcd934x-codec.3.auto: Runtime PM usage count underflow! The commit claimed no changes in functionality except dropping the reference on -EACCESS. This is exactly the change introducing bug because function calls unconditionally pm_runtime_put_autosuspend() at the end. Cc: Bard Liao Cc: Pierre-Louis Bossart Cc: Kai Vehmanen Cc: Ranjani Sridharan Cc: Srinivas Kandagatla Cc: Cezary Rojewski Cc: Fixes: ddea4bbf287b ("ASoC: wcd-mbhc-v2: use pm_runtime_resume_and_get()") Signed-off-by: Krzysztof Kozlowski --- sound/soc/codecs/wcd-mbhc-v2.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/sound/soc/codecs/wcd-mbhc-v2.c b/sound/soc/codecs/wcd-mbhc-v2.c index b16a18dbfe7a..1911750f7445 100644 --- a/sound/soc/codecs/wcd-mbhc-v2.c +++ b/sound/soc/codecs/wcd-mbhc-v2.c @@ -714,11 +714,12 @@ static int wcd_mbhc_initialise(struct wcd_mbhc *mbhc) struct snd_soc_component *component = mbhc->component; int ret; - ret = pm_runtime_resume_and_get(component->dev); + ret = pm_runtime_get_sync(component->dev); if (ret < 0 && ret != -EACCES) { dev_err_ratelimited(component->dev, - "pm_runtime_resume_and_get failed in %s, ret %d\n", + "pm_runtime_get_sync failed in %s, ret %d\n", __func__, ret); + pm_runtime_put_noidle(component->dev); return ret; } @@ -1096,11 +1097,12 @@ static void wcd_correct_swch_plug(struct work_struct *work) mbhc = container_of(work, struct wcd_mbhc, correct_plug_swch); component = mbhc->component; - ret = pm_runtime_resume_and_get(component->dev); + ret = pm_runtime_get_sync(component->dev); if (ret < 0 && ret != -EACCES) { dev_err_ratelimited(component->dev, - "pm_runtime_resume_and_get failed in %s, ret %d\n", + "pm_runtime_get_sync failed in %s, ret %d\n", __func__, ret); + pm_runtime_put_noidle(component->dev); return; } micbias_mv = wcd_mbhc_get_micbias(mbhc); -- 2.34.1