OpenCloudOS-Kernel/sound/pci
Takashi Iwai 8a7d6003df ALSA: hda - Skip jack and others for non-existing PCM streams
When CONFIG_SND_DYNAMIC_MINORS isn't set, there are only limited
number of devices available, and HD-audio, especially with HDMI/DP
codec, will fail to create more than two devices.

The driver warns about the lack of such devices and skips the PCM
device creations, but the HDMI driver still tries to create the
corresponding JACK, SPDIF and ELD controls even for the non-existing
PCM substreams.  This results in confusion on user-space, and even may
break the operation.

Similarly, Intel HDMI/DP codec builds the ELD notification from i915
graphics driver, and this may be broken if a notification is sent for
the non-existing PCM stream.

This patch adds the check of the existence of the assigned PCM
substream in the both scenarios above, and skips the further operation
if the PCM substream is not assigned.

Fixes: 9152085def ("ALSA: hda - add DP MST audio support")
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2018-04-25 16:37:19 +02:00
..
ac97 scripts/spelling.txt: add "swith" pattern and fix typo instances 2017-02-27 18:43:46 -08:00
ali5451 ALSA: ali5451: constify snd_pcm_ops structures 2017-08-10 17:56:04 +02:00
asihpi ALSA: asihpi: Hardening for potential Spectre v1 2018-04-25 10:37:47 +02:00
au88x0 ASoC: Updates for v4.15 2017-11-13 15:45:57 +01:00
aw2 ALSA: aw2: make snd_pcm_hardware const 2017-08-12 23:31:39 +02:00
ca0106 ALSA: ca0106: Delete an error message for a failed memory allocation in snd_ca0106_pcm_open_capture_channel() 2017-08-12 23:33:54 +02:00
cs46xx ALSA: cs46xx: make snd_pcm_hardware const 2017-08-12 23:31:41 +02:00
cs5535audio License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ctxfi ASoC: Updates for v4.15 2017-11-13 15:45:57 +01:00
echoaudio ALSA: echoaudio: remove redundant initialization of pointer 'pipe' 2018-03-12 16:05:11 +01:00
emu10k1 ALSA: emu10k1: add a IOMMU workaround 2018-02-14 07:46:55 +01:00
hda ALSA: hda - Skip jack and others for non-existing PCM streams 2018-04-25 16:37:19 +02:00
ice1712 ALSA: ice1712: replace strcpy() with strlcpy() 2018-03-01 16:13:13 +01:00
korg1212 ALSA: korg1212: Delete a duplicate function call "release_firmware" in snd_korg1212_create() 2017-11-29 09:29:41 +01:00
lola ALSA: lola: make snd_pcm_hardware const 2017-08-12 23:31:46 +02:00
lx6464es ALSA: lx6464es: make snd_pcm_hardware const 2017-08-12 23:31:48 +02:00
mixart ALSA: mixart: Delete an error message for a failed memory allocation in snd_mixart_create() 2017-08-12 23:33:20 +02:00
nm256 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
oxygen ASoC: Updates for v4.15 2017-11-13 15:45:57 +01:00
pcxhr ALSA: pcxhr: make snd_kcontrol_new const 2017-08-16 14:29:07 +02:00
riptide ALSA: riptide: make snd_pcm_hardware const 2017-08-12 23:31:53 +02:00
rme9652 ALSA: rme9652: Hardening for potential Spectre v1 2018-04-25 10:37:48 +02:00
trident ALSA: trident: make snd_pcm_hardware const 2017-08-12 23:31:55 +02:00
vx222 ALSA: vx222: Use container_of() 2017-05-15 11:21:05 +02:00
ymfpci ALSA: ymfpci: Use common error handling code in snd_ymfpci_create() 2017-09-07 10:33:28 +02:00
Kconfig ALSA: seq: Allow the modular sequencer registration 2017-06-12 08:43:33 +02:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ad1889.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
ad1889.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ak4531_codec.c ALSA: pci: Drop superfluous ifdef CONFIG_PROC_FS 2015-05-29 08:00:06 +02:00
als300.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
als4000.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
atiixp.c ALSA: atiixp: constify ac97_pcm structures 2017-08-23 15:53:39 +02:00
atiixp_modem.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
azt3328.c ALSA: azt3328: Constify hw_constraints 2017-06-09 10:42:49 +02:00
azt3328.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bt87x.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
cmipci.c ALSA: cmipci: Use common error handling code in snd_cmipci_probe() 2017-08-22 20:06:10 +02:00
cs4281.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
cs5530.c ASoC: sb16: Simplify snd_sb16dsp_pcm() 2015-01-02 16:28:35 +01:00
ens1370.c ALSA: ens137x: remove redundant variable result 2017-10-16 13:36:24 +02:00
ens1371.c
es1938.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
es1968.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
fm801.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
intel8x0.c ALSA: intel8x0: constify ac97_pcm structures 2017-08-23 15:53:40 +02:00
intel8x0m.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
maestro3.c ALSA: maestro3: Use common error handling code in two functions 2017-09-07 10:23:47 +02:00
rme32.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
rme96.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
sis7019.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
sis7019.h
sonicvibes.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
via82xx.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00
via82xx_modem.c ALSA: pci: make snd_pcm_hardware const 2017-08-12 23:31:58 +02:00