summaryrefslogtreecommitdiffstats
path: root/sound/pci
diff options
context:
space:
mode:
authorZhouyang Jia <jiazhouyang09@gmail.com>2018-06-11 16:18:40 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-08-09 12:20:25 +0200
commitda2858dce9a74580d2ce234fe6da99e22eef5b1a (patch)
tree4c4e0abc304d457e052cb2f739dcce2ae154a09b /sound/pci
parent490106d9760e34ec0f85139e8ec900f2aa6974e9 (diff)
downloadlinux-stable-da2858dce9a74580d2ce234fe6da99e22eef5b1a.tar.gz
linux-stable-da2858dce9a74580d2ce234fe6da99e22eef5b1a.tar.bz2
linux-stable-da2858dce9a74580d2ce234fe6da99e22eef5b1a.zip
ALSA: emu10k1: add error handling for snd_ctl_add
[ Upstream commit 6d531e7b972cb62ded011c2dfcc2d9f72ea6c421 ] When snd_ctl_add fails, the lack of error-handling code may cause unexpected results. This patch adds error-handling code after calling snd_ctl_add. Signed-off-by: Zhouyang Jia <jiazhouyang09@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound/pci')
-rw-r--r--sound/pci/emu10k1/emupcm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sound/pci/emu10k1/emupcm.c b/sound/pci/emu10k1/emupcm.c
index 36f0b8646417..0e6dd2464e81 100644
--- a/sound/pci/emu10k1/emupcm.c
+++ b/sound/pci/emu10k1/emupcm.c
@@ -1875,7 +1875,9 @@ int snd_emu10k1_pcm_efx(struct snd_emu10k1 *emu, int device,
if (!kctl)
return -ENOMEM;
kctl->id.device = device;
- snd_ctl_add(emu->card, kctl);
+ err = snd_ctl_add(emu->card, kctl);
+ if (err < 0)
+ return err;
snd_pcm_lib_preallocate_pages_for_all(pcm, SNDRV_DMA_TYPE_DEV, snd_dma_pci_data(emu->pci), 64*1024, 64*1024);