From nobody Thu Apr 2 14:20:11 2026 Received: from mail-qk1-f176.google.com (mail-qk1-f176.google.com [209.85.222.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4DFAA31B110 for ; Tue, 10 Feb 2026 14:38:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.222.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770734295; cv=none; b=fqbuDmabiFxPbT01RQClu1KKgxsRXBeM+EUfQdtB44xyfVz1M1bbDN+vm9vbo/ahPtDcakySWJXhDawahWcriy7pWbU0N/3bW691XW0JADEVC3ndoXmSUYhUkFMp6XqTqixbRqUs8/Stl59lFmO3qZctTAM+JKf2wHNZeCTZt3g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770734295; c=relaxed/simple; bh=oLSi/r/QsoPbrfShTfx4Ji4Iiw+HqD1AABhGoJTxIC0=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=i2ovVvVi3IvchYCTp3ih5j8CwxzCWSx3CcDxgFdRx8bKkjhk33gdaAWAjuwQdQBP5GYtUkP2D4MNPjijcoiBkLAPjLA8eXmMUEVVXxbH5sHUlJOWp/4BjxxUO1YnxwpDwYj3+4E1v0AUxN1bs1mgi4u3Kp/gjUi93CpHiWtD1+k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=u.northwestern.edu; spf=pass smtp.mailfrom=u.northwestern.edu; dkim=pass (2048-bit key) header.d=u-northwestern-edu.20230601.gappssmtp.com header.i=@u-northwestern-edu.20230601.gappssmtp.com header.b=l75fvNXK; arc=none smtp.client-ip=209.85.222.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=u.northwestern.edu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=u.northwestern.edu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=u-northwestern-edu.20230601.gappssmtp.com header.i=@u-northwestern-edu.20230601.gappssmtp.com header.b="l75fvNXK" Received: by mail-qk1-f176.google.com with SMTP id af79cd13be357-8c6d8751c88so593296685a.2 for ; Tue, 10 Feb 2026 06:38:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=u-northwestern-edu.20230601.gappssmtp.com; s=20230601; t=1770734292; x=1771339092; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=pkYuyRwsnTcRNpSowH2WXxBKWT/+EdlbZCcoZtFynkQ=; b=l75fvNXKOKzBVL6wF3APn7ZRTtryn5NRUYZw3QV2373ffHmGZWdquy1qdQ7s0Oc3rP Tv9+7bYyIyu2HvEAiOhP9/niLFce0J0U07z6CeS0FwpPL45B2QTe8euPll7E/47gnzdb pvYhT+jRLR3fjaz9sBjQ2C2cHo6e9BEKSncGfCPfvfv+XfOp77pZ9GQva7H26J5i6cKT jA0OvbKxskN0IVw2UT5fSjzYTKOKi2My/w4hkXrLP7OYR9KrHAWot+S+qjD2EyrfGHrV /1Y4p6qS/EyCubNcKc2F2AMQBR8lhrkUVOTHCPxZ/UFbjMbsD7XCac8GtlO5Z5sdoM0s iDVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770734292; x=1771339092; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=pkYuyRwsnTcRNpSowH2WXxBKWT/+EdlbZCcoZtFynkQ=; b=OzCAfeOPwgBJmwcJHy7oUUqtg1fZTVLUCyjALretWXnJ5v6sJcPLu/Sma+lQITOaeg pmteNA2FxrHU8DmYDwHTnuEA/GVm99iYcn7ftBgoSLzwSrnCbgWucQ0wEZaNNo9mPmDF k/arXL1EzP2eKSMC+CXLNIY96ddGhR+pcqjD3HQ3B0K+WMrBrQZgBCInM7a3g1+wETOg qJO+oQJ8+ia2ky33lb3ET6fI1OzHpFt5pVp7uKQGFoyq1DTR2ykBKDObHaqb1MuIV1Cy XL3HPMTUUmBAFU2jGSghyeRk3Ew6Rnqpk2XxItjktTK/KjRBGnNKJFnyeUhCODunWRz0 aYXg== X-Forwarded-Encrypted: i=1; AJvYcCXFZ/Di1RwdktIRRJfUFzmyuQlCbcSFUrpHu0kTTICsGJ/fGj+mcaEFnDusQZbSjvt47CnnD0Yb7Pb0yOc=@vger.kernel.org X-Gm-Message-State: AOJu0YxOnphRieQAsFuIkzGxhBijdnAZLHIhLD5O/ZIsEbsS8HCM8PZK UnZIGKjYoggJRjrPtS1gDZuofI567xeNwrxqUK0QklQyVukCgqcZATxN4PWmKOrFA+A= X-Gm-Gg: AZuq6aKMpa2wplNT0rdxkIPXdlqtT3mqk4bqF25Yy3fuQ1IfD5fntu7GxwNpP0e8H8x lM/AzmLrHqEF5OsrS+/YSb+nQGgndSJiuL1sU88O9DTqfy9eCYVbXPfelff1k4F+ZmE7lecEVyy eW4mT5pP2/TStJ/mjdk3BnH03aPJ215NVQcSfsMAyShsYlgGrZAfY+hS7j4EGlM96FDk2qXbKnI lXLfmiPlw/yWUOycy/yc1g/ITd64Utemo0F+qTNnw3MiKB8akYLL2DBSbWaoQBTpkuOznfNxa2R K5PwTuFxCUqb1XSCi6ozQ/di9AIAfG+MEsAJRx64F7Nkvtxoh1FyN2WHtWpRbXdWCWnzq2Q2+Yo KqhtPNhshcWpzWojQn+Rled00NGf+I79a4CxQrHqXCdqD+Yo8QrRg/tdkR1CkCdulxCeaYmgMOt +V+SumsOuvkTNFmwWVd4ejgk+cMOvqbCxYYTpwEnWcS7IQVN9FiXULW2d83UclQTBNSWTGFVurt OsVsohXWzlGJ+LbDRf7Z9y6HQadneYftRrk5pace8Y= X-Received: by 2002:a05:620a:7087:b0:8cb:1d86:aa4f with SMTP id af79cd13be357-8cb1f72ee0dmr272527185a.78.1770734292144; Tue, 10 Feb 2026 06:38:12 -0800 (PST) Received: from security.cs.northwestern.edu (security.cs.northwestern.edu. [165.124.184.136]) by smtp.gmail.com with ESMTPSA id af79cd13be357-8caf9a1575asm1132760985a.32.2026.02.10.06.38.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 10 Feb 2026 06:38:11 -0800 (PST) From: Ziyi Guo To: Mark Brown , Alexander Stein Cc: Shengjiu Wang , Xiubo Li , Fabio Estevam , Nicolin Chen , Liam Girdwood , Jaroslav Kysela , Takashi Iwai , linux-sound@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Ziyi Guo Subject: [PATCH] Revert "ASoC: fsl_xcvr: fix missing lock in fsl_xcvr_mode_put()" Date: Tue, 10 Feb 2026 14:38:09 +0000 Message-Id: <20260210143809.297565-1-n7l8m4@u.northwestern.edu> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" This reverts commit f514248727606b9087bc38a284ff686e0093abf1. The original patch attempted to acquire the card->controls_rwsem lock in fsl_xcvr_mode_put(). However, this function is called from the upper ALSA core function snd_ctl_elem_write(), which already holds the write lock on controls_rwsem for the whole put operation. So there is no need to simply hold the lock for fsl_xcvr_activate_ctl() again. Acquiring the read lock while holding the write lock in the same thread results in a deadlock and a hung task, as reported by Alexander Stein. Reported-by: Alexander Stein Closes: https://lore.kernel.org/linux-sound/5056506.GXAFRqVoOG@steina-w/ Signed-off-by: Ziyi Guo --- sound/soc/fsl/fsl_xcvr.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/sound/soc/fsl/fsl_xcvr.c b/sound/soc/fsl/fsl_xcvr.c index 0b9dd64b9a82..a268fb81a2f8 100644 --- a/sound/soc/fsl/fsl_xcvr.c +++ b/sound/soc/fsl/fsl_xcvr.c @@ -223,13 +223,10 @@ static int fsl_xcvr_mode_put(struct snd_kcontrol *kco= ntrol, =20 xcvr->mode =3D snd_soc_enum_item_to_val(e, item[0]); =20 - down_read(&card->snd_card->controls_rwsem); fsl_xcvr_activate_ctl(dai, fsl_xcvr_arc_mode_kctl.name, (xcvr->mode =3D=3D FSL_XCVR_MODE_ARC)); fsl_xcvr_activate_ctl(dai, fsl_xcvr_earc_capds_kctl.name, (xcvr->mode =3D=3D FSL_XCVR_MODE_EARC)); - up_read(&card->snd_card->controls_rwsem); -=09 /* Allow playback for SPDIF only */ rtd =3D snd_soc_get_pcm_runtime(card, card->dai_link); rtd->pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream_count =3D --=20 2.34.1