diff mbox series

ALSA: hda/hdmi: Drop bogus check at closing a stream

Message ID 20210211083139.29531-1-tiwai@suse.de (mailing list archive)
State Accepted
Commit 056a3da5d07fc5d3ceacfa2cdf013c9d8df630bd
Headers show
Series ALSA: hda/hdmi: Drop bogus check at closing a stream | expand

Commit Message

Takashi Iwai Feb. 11, 2021, 8:31 a.m. UTC
Some users reported the kernel WARNING with stack traces from
hdmi_pcm_close(), and it's the line checking the per_cvt->assigned
flag.  This used to be a valid check in the past because the flag was
turned on/off only at opening and closing a PCM stream.  Meanwhile,
since the introduction of the silent-stream mode, this flag may be
turned on/off at the monitor connection/disconnection time, which
isn't always associated with the PCM open/close.  Hence this may lead
to the inconsistent per_cvt->assigned flag at closing.

As the check itself became almost useless and confuses users as if it
were a serious problem, just drop the check.

Fixes: b1a5039759cb ("ALSA: hda/hdmi: fix silent stream for first playback to DP")
Cc: <stable@vger.kernel.org>
BugLink: https://bugzilla.kernel.org/show_bug.cgi?id=210987
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
 sound/pci/hda/patch_hdmi.c | 1 -
 1 file changed, 1 deletion(-)

Comments

Kai Vehmanen Feb. 11, 2021, 10:38 a.m. UTC | #1
Hi,

On Thu, 11 Feb 2021, Takashi Iwai wrote:

> Some users reported the kernel WARNING with stack traces from
> hdmi_pcm_close(), and it's the line checking the per_cvt->assigned
> flag.  This used to be a valid check in the past because the flag was
> turned on/off only at opening and closing a PCM stream.  Meanwhile,
> since the introduction of the silent-stream mode, this flag may be
> turned on/off at the monitor connection/disconnection time, which

ack, this needs to be removed:

Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>

Br, Kai
diff mbox series

Patch

diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 97adff0cbcab..e405be7929e3 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -2130,7 +2130,6 @@  static int hdmi_pcm_close(struct hda_pcm_stream *hinfo,
 			goto unlock;
 		}
 		per_cvt = get_cvt(spec, cvt_idx);
-		snd_BUG_ON(!per_cvt->assigned);
 		per_cvt->assigned = 0;
 		hinfo->nid = 0;