android_kernel_samsung_msm8976/sound
Takashi Iwai 34da878b70 ALSA: rawmidi: Avoid racy info ioctl via ctl device
commit c1cfd9025cc394fd137a01159d74335c5ac978ce upstream.

The rawmidi also allows to obtaining the information via ioctl of ctl
API.  It means that user can issue an ioctl to the rawmidi device even
when it's being removed as long as the control device is present.
Although the code has some protection via the global register_mutex,
its range is limited to the search of the corresponding rawmidi
object, and the mutex is already unlocked at accessing the rawmidi
object.  This may lead to a use-after-free.

For avoiding it, this patch widens the application of register_mutex
to the whole snd_rawmidi_info_select() function.  We have another
mutex per rawmidi object, but this operation isn't very hot path, so
it shouldn't matter from the performance POV.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
2019-07-27 21:46:17 +02:00
..
aoa
arm
atmel
core ALSA: rawmidi: Avoid racy info ioctl via ctl device 2019-07-27 21:46:17 +02:00
drivers ALSA: dummy: Fix a use-after-free at closing 2019-07-27 21:41:56 +02:00
firewire
i2c
isa
mips
oss
parisc
pci This is the 3.10.102 stable release 2017-04-18 17:22:08 +02:00
pcmcia
ppc
sh
soc sound: soc: msm8952_rt5659: Handle defer while probing 2019-07-27 21:45:58 +02:00
sparc
spi
synth
usb ALSA: usb-audio: Add check return value for usb_string() 2019-07-27 21:46:14 +02:00
Kconfig
Makefile
ac97_bus.c
last.c
sound_core.c
sound_firmware.c