From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.remote-ip=100.103.45.18 ARC-Seal: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; cv=none; t=1794062976; b=NL06JxKh0XUMJ2AdTfcCi3Vow5c/uHGpDLDhcKy3/mhRAHwmrTVmrWXj8bWmZAnXCnvP Q6d9QuE/IyN2HrtE6+YXfH+LGtA+9+i7AYsLsglQ3iimEEqtsiPLQUX9B7Xz56y4BqLGx gT3nXtNl5OgOwKlRqXE9FiGmbaB2kgvCNV2pqw1JNXahpO2Zrjv5UiDRhC8IrSs+ZHCHA DGLXB8N1/ynoHszYmC8+euLSPWH/xRqHV/RMEIhvPlQsgWejHPIg6awRs9OaGTTTKf76X XtzADStsQH7EP01dX05jXexZbMYFTZYMucwP2sC1bybJ8mnqkozNYO0w7oc6b+KFZng== ARC-Message-Signature: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; c=relaxed/relaxed; t=1794062976; h=Received:DKIM-Signature:From:To:Cc:Subject:Date:Message-ID:X-Mailer: In-Reply-To:References:User-Agent:X-stable:X-Patchwork-Hint: MIME-Version:Content-Transfer-Encoding; bh=Ccw7mfRDQGYPnWITBpQfUHzSSDCNuBpiuuPeE/FbThY=; b=SOudcjs7NTbkmutueCMXRr2wbfatuGrme14LuB8ri2AXcVGYLnYjML9z0kxZKqW/hvMw QpVYAvF7P+LwjdHrt7wcCMVnIlbgxw36BqRlOvDAx3RBlKiIWn1mydyEvBA1hEx64vAzh Vf2LA7dTi28diGVo9uf4cVkdQzKCS3+Au6phnLAyLLJuZhv+uws8HXOla8G5gJm28xFky aqEW7MTmHJGGsaUcVMVX3Li0ackDIevskFo/fPAQFbVlzmcOp9QqZ9eHvC5i++t5kSoYl VMMPDLdsPZqLxwgfmOPXTpIeUl/crUpgLw70gAzOV/bDRIZ7C0u4fizwtwtKPFFhecQ== ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass header.d=linuxfoundation.org header.i=@linuxfoundation.org header.a=rsa-sha256 header.s=korg header.b=mg1iBbdQ; arc=none smtp.remote-ip=100.103.45.18 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D95CE606A33B; Sat, 7 Nov 2026 14:49:35 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.a=rsa-sha256 header.s=korg header.b=mg1iBbdQ Received: by smtp.kernel.org (Postfix) with ESMTPSA id 878171F0089F; Sat, 7 Nov 2026 14:49:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=korg; t=1794062975; bh=Ccw7mfRDQGYPnWITBpQfUHzSSDCNuBpiuuPeE/FbThY=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=mg1iBbdQ1uC6SpJapvdd16deRpXcXBoFVAXp7Q5hS8u6VtTRYl56gL4on7V1etVu/ czVfTrRVkqnhKu+MTfrRnHnvRsF1Bx4mR2yQlROLOIoEPsA24+89kzddh1fFe0wSOl 7wNjRyyRG6XIupbda+mAvVOcwOdAxcT2aee6nndA= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Junjie Cao , Mark Brown , Sasha Levin Subject: [PATCH 6.18 237/869] ASoC: rt712-sdca-dmic: fix drvdata type in the gain controls Date: Sat, 7 Nov 2026 08:48:39 -0500 Message-ID: <20261107134859.877637993@linuxfoundation.org> X-Mailer: git-send-email 2.56.0 In-Reply-To: <20261107134852.069646174@linuxfoundation.org> References: <20261107134852.069646174@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore X-Mailing-List: stable@vger.kernel.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 6.18-stable review patch. If anyone has any objections, please let me know. ------------------ From: Junjie Cao [ Upstream commit 0bc42544a4a06e8d76eb412d2b1414db910a311d ] rt712_sdca_dmic_set_gain_get() and rt712_sdca_dmic_set_gain_put() take the component drvdata as struct rt712_sdca_priv, but this driver stores a struct rt712_sdca_dmic_priv. regmap and mbq_regmap are at the same offsets in both structs, so the register accesses work. slave is not: rt712_sdca_priv has dmic_component in front of it, so its slave overlays rt712_sdca_dmic_priv's params, which this driver never writes. When regmap_write() fails in the put handler, dev_err() is called with &NULL->dev (RSI below): rt712-sdca-dmic sdw:0:3:025d:1713:01: Defer on undeferrable control: 40800f13 BUG: kernel NULL pointer dereference, address: 0000000000000058 RIP: 0010:__dev_printk+0x10/0x70 RDX: ffffcdac45f83cd0 RSI: 0000000000000008 RDI: ffffffffa09cb5cb Call Trace: _dev_err+0x7f/0x99 rt712_sdca_dmic_set_gain_put.cold+0x20/0x25 [snd_soc_rt712_sdca_dmic] snd_ctl_elem_write+0x19a/0x1f0 [snd] snd_ctl_ioctl+0x658/0x8a0 [snd] Seen on a Dell Precision 5690 running 7.2.5-200.fc44, with alsactl writing the control during boot. Compile-tested only. Fixes: 63a511284c9e ("ASoC: rt712-sdca: Add RT712 SDCA driver for Mic topology") Closes: https://bugzilla.redhat.com/show_bug.cgi?id=2532834 Cc: stable@vger.kernel.org Signed-off-by: Junjie Cao Link: https://patch.msgid.link/20260920024232.710189-1-junjie.cao@intel.com Signed-off-by: Mark Brown Signed-off-by: Sasha Levin --- sound/soc/codecs/rt712-sdca-dmic.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/rt712-sdca-dmic.c b/sound/soc/codecs/rt712-sdca-dmic.c index bc5b872f1e42f..bbbea9af73cd2 100644 --- a/sound/soc/codecs/rt712-sdca-dmic.c +++ b/sound/soc/codecs/rt712-sdca-dmic.c @@ -247,7 +247,7 @@ static int rt712_sdca_dmic_set_gain_get(struct snd_kcontrol *kcontrol, struct snd_ctl_elem_value *ucontrol) { struct snd_soc_component *component = snd_kcontrol_chip(kcontrol); - struct rt712_sdca_priv *rt712 = snd_soc_component_get_drvdata(component); + struct rt712_sdca_dmic_priv *rt712 = snd_soc_component_get_drvdata(component); struct rt712_sdca_dmic_kctrl_priv *p = (struct rt712_sdca_dmic_kctrl_priv *)kcontrol->private_value; unsigned int regvalue, ctl, i; @@ -278,7 +278,7 @@ static int rt712_sdca_dmic_set_gain_put(struct snd_kcontrol *kcontrol, struct snd_soc_component *component = snd_kcontrol_chip(kcontrol); struct rt712_sdca_dmic_kctrl_priv *p = (struct rt712_sdca_dmic_kctrl_priv *)kcontrol->private_value; - struct rt712_sdca_priv *rt712 = snd_soc_component_get_drvdata(component); + struct rt712_sdca_dmic_priv *rt712 = snd_soc_component_get_drvdata(component); unsigned int gain_val[4]; unsigned int i, adc_vol_flag = 0, changed = 0; unsigned int regvalue[4]; -- 2.53.0