mirror of
https://github.com/FEX-Emu/linux.git
synced 2024-12-26 03:17:48 +00:00
07f4d9d74a
The user-control put and get handlers as well as the tlv do not protect against concurrent access from multiple threads. Since the state of the control is not updated atomically it is possible that either two write operations or a write and a read operation race against each other. Both can lead to arbitrary memory disclosure. This patch introduces a new lock that protects user-controls from concurrent access. Since applications typically access controls sequentially than in parallel a single lock per card should be fine. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Jaroslav Kysela <perex@perex.cz> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> |
||
---|---|---|
.. | ||
ac97_codec.h | ||
aci.h | ||
ad1816a.h | ||
ad1843.h | ||
adau1373.h | ||
aess.h | ||
ak4xxx-adda.h | ||
ak4113.h | ||
ak4114.h | ||
ak4117.h | ||
ak4531_codec.h | ||
ak4641.h | ||
alc5623.h | ||
asequencer.h | ||
asound.h | ||
asoundef.h | ||
atmel-abdac.h | ||
atmel-ac97c.h | ||
compress_driver.h | ||
control.h | ||
core.h | ||
cs42l52.h | ||
cs42l56.h | ||
cs42l73.h | ||
cs4231-regs.h | ||
cs4271.h | ||
cs8403.h | ||
cs8427.h | ||
da7213.h | ||
da9055.h | ||
designware_i2s.h | ||
dmaengine_pcm.h | ||
emu10k1_synth.h | ||
emu10k1.h | ||
emu8000_reg.h | ||
emu8000.h | ||
emux_legacy.h | ||
emux_synth.h | ||
es1688.h | ||
gus.h | ||
hda_hwdep.h | ||
hda_verbs.h | ||
hwdep.h | ||
i2c.h | ||
info.h | ||
initval.h | ||
jack.h | ||
l3.h | ||
max9768.h | ||
max98088.h | ||
max98090.h | ||
max98095.h | ||
memalloc.h | ||
minors.h | ||
mixer_oss.h | ||
mpu401.h | ||
omap-pcm.h | ||
opl3.h | ||
opl4.h | ||
pcm_oss.h | ||
pcm_params.h | ||
pcm-indirect.h | ||
pcm.h | ||
pt2258.h | ||
pxa2xx-lib.h | ||
rawmidi.h | ||
rcar_snd.h | ||
rt5640.h | ||
rt5645.h | ||
rt5651.h | ||
rt5677.h | ||
s3c24xx_uda134x.h | ||
sb16_csp.h | ||
sb.h | ||
seq_device.h | ||
seq_kernel.h | ||
seq_midi_emul.h | ||
seq_midi_event.h | ||
seq_oss_legacy.h | ||
seq_oss.h | ||
seq_virmidi.h | ||
sh_dac_audio.h | ||
sh_fsi.h | ||
simple_card.h | ||
snd_wavefront.h | ||
soc-dai.h | ||
soc-dapm.h | ||
soc-dpcm.h | ||
soc.h | ||
soundfont.h | ||
spear_dma.h | ||
spear_spdif.h | ||
sta32x.h | ||
sta350.h | ||
tas5086.h | ||
tea6330t.h | ||
timer.h | ||
tlv320aic3x.h | ||
tlv320aic32x4.h | ||
tlv320dac33-plat.h | ||
tlv.h | ||
tpa6130a2-plat.h | ||
uda134x.h | ||
uda1380.h | ||
util_mem.h | ||
vx_core.h | ||
wavefront.h | ||
wm0010.h | ||
wm1250-ev1.h | ||
wm2000.h | ||
wm2200.h | ||
wm5100.h | ||
wm8903.h | ||
wm8904.h | ||
wm8955.h | ||
wm8960.h | ||
wm8962.h | ||
wm8993.h | ||
wm8996.h | ||
wm9081.h | ||
wm9090.h | ||
wss.h |