linux/include/sound
Lars-Peter Clausen 07f4d9d74a ALSA: control: Protect user controls against concurrent access
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>
2014-06-18 15:12:33 +02:00
..
ac97_codec.h
aci.h
ad1816a.h
ad1843.h
adau1373.h
aess.h
ak4xxx-adda.h
ak4113.h
ak4114.h ALSA: ak4114: Fix wrong register array size 2013-10-29 16:42:36 +01:00
ak4117.h
ak4531_codec.h
ak4641.h
alc5623.h
asequencer.h
asound.h
asoundef.h
atmel-abdac.h
atmel-ac97c.h ALSA: sound/atmel-ac97c.h: Remove unused flags from platform data 2014-04-16 10:22:03 +02:00
compress_driver.h ALSA: compress: fix drain calls blocking other compress functions (v6) 2013-11-07 10:12:27 +01:00
control.h
core.h ALSA: control: Protect user controls against concurrent access 2014-06-18 15:12:33 +02:00
cs42l52.h ASoC: cs42l52: Make MICA/B mixer dependent on mic config 2013-11-28 10:20:51 +00:00
cs42l56.h ASoC: Add support for CS42L56 CODEC 2014-05-05 18:20:22 -07:00
cs42l73.h ASoC: cs42l73: Add platform data support for cs42l73 codec 2013-10-18 00:37:29 +01:00
cs4231-regs.h
cs4271.h
cs8403.h
cs8427.h ALSA: cs8427: separate HW initialization 2014-04-03 14:59:48 +02:00
da7213.h
da9055.h
designware_i2s.h
dmaengine_pcm.h ASoC: dmaengine: add custom DMA config to snd_dmaengine_pcm_config 2013-12-09 18:45:01 +00:00
emu10k1_synth.h
emu10k1.h Revert "ALSA: emu10k1: Fix warning: "CCR" redefined" 2014-03-11 07:54:14 +01:00
emu8000_reg.h
emu8000.h
emux_legacy.h
emux_synth.h
es1688.h
gus.h
hda_hwdep.h
hda_verbs.h ALSA: hda - Split verb definitions into sound/hda_verbs.h 2013-12-09 17:31:40 +01:00
hwdep.h ALSA: hwdep: Allow to assign the given parent 2014-02-25 12:12:50 +01:00
i2c.h
info.h
initval.h
jack.h
l3.h
max9768.h
max98088.h
max98090.h
max98095.h
memalloc.h ALSA: Remove memory reservation code from memalloc helper 2014-01-09 07:32:10 +01:00
minors.h
mixer_oss.h
mpu401.h
omap-pcm.h ASoC: omap-pcm: Move omap-pcm under include/sound 2014-05-26 15:32:32 +01:00
opl3.h
opl4.h
pcm_oss.h
pcm_params.h ALSA: Add params_width() helpers 2013-12-30 12:19:26 +00:00
pcm-indirect.h
pcm.h ALSA: core: Use ktime_get_ts() 2014-06-12 12:58:16 +02:00
pt2258.h
pxa2xx-lib.h
rawmidi.h ALSA: rawmidi: remove undefined functions. 2014-02-21 12:06:12 +01:00
rcar_snd.h ASoC: rsnd: add DVC support 2014-05-13 19:06:16 +01:00
rt5640.h ASoC: rt5640: Use the platform data for DMIC settings 2014-04-14 17:27:41 +01:00
rt5645.h ASoC: rt5645: Add codec driver 2014-05-03 10:36:10 -07:00
rt5651.h ASoC: add RT5651 CODEC driver 2014-04-18 18:52:18 +01:00
rt5677.h ASoC: add RT5677 CODEC driver 2014-06-01 20:18:21 +01:00
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 ASoC: simple-card: add slot information parsing supports 2014-02-23 14:26:37 +09:00
snd_wavefront.h
soc-dai.h ASoC: Remove runtime field from DAI 2014-05-12 22:08:36 +01:00
soc-dapm.h Merge remote-tracking branch 'asoc/topic/enum' into asoc-next 2014-05-22 00:23:44 +01:00
soc-dpcm.h ASoC: DPCM: make some DPCM API calls non static for compressed usage 2014-01-17 17:56:21 +00:00
soc.h Merge remote-tracking branches 'asoc/topic/gpio' and 'asoc/topic/intel' into asoc-next 2014-06-03 10:39:50 +01:00
soundfont.h
spear_dma.h ASoC: SPEAr: remove custom DMA alloc compat function 2013-12-18 18:55:06 +00:00
spear_spdif.h
sta32x.h
sta350.h ASoC: sta350: add support for bits in miscellaneous registers 2014-05-05 12:52:59 -07:00
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