android_kernel_oneplus_msm8998/sound/drivers
Takashi Iwai 5e6d308ff7 ALSA: aloop: Fix access to not-yet-ready substream via cable
commit 8e6b1a72a75bb5067ccb6b56d8ca4aa3a300a64e upstream.

In loopback_open() and loopback_close(), we assign and release the
substream object to the corresponding cable in a racy way.  It's
neither locked nor done in the right position.  The open callback
assigns the substream before its preparation finishes, hence the other
side of the cable may pick it up, which may lead to the invalid memory
access.

This patch addresses these: move the assignment to the end of the open
callback, and wrap with cable->lock for avoiding concurrent accesses.

Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-03-28 18:40:13 +02:00
..
mpu401 ALSA: Include linux/io.h instead of asm/io.h 2015-01-28 16:49:33 +01:00
opl3 Merge branch 'for-linus' into for-next 2015-03-09 08:42:00 +01:00
opl4 ALSA: opl4: Fix / cleanup ifdef CONFIG_PROC_FS 2015-05-29 07:49:55 +02:00
pcsp ALSA: drivers: pcsp: Fix printout of resolution 2015-05-12 09:14:51 +02:00
vx ALSA: vx: Fix possible transfer overflow 2017-11-21 09:21:20 +01:00
aloop.c ALSA: aloop: Fix access to not-yet-ready substream via cable 2018-03-28 18:40:13 +02:00
dummy.c ALSA: dummy: Fix a use-after-free at closing 2016-07-27 09:47:37 -07:00
Kconfig ALSA: sound kconfig typo 2013-04-24 14:02:36 +02:00
Makefile
ml403-ac97cr.c ALSA: Deletion of checks before the function call "iounmap" 2015-01-04 15:13:45 +01:00
mtpav.c ALSA: mtpav: Use setup_timer() and mod_timer() 2015-01-19 11:32:10 +01:00
mts64.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
pcm-indirect2.c
pcm-indirect2.h
portman2x4.c ALSA: drivers: drop owner assignment from platform_drivers 2014-10-20 16:21:59 +02:00
serial-u16550.c ALSA: Include linux/io.h instead of asm/io.h 2015-01-28 16:49:33 +01:00
virmidi.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00