linux/sound/soc/sti
Arnaud Pouliquen d05d862ead ASoC: STI: Fix null ptr deference in IRQ handler
With RTlinux a race condition has been found that leads to NULL ptr crash:
- On CPU 0: uni_player_irq_handler is called to treat XRUN
 "(player->state == UNIPERIF_STATE_STOPPED)" is FALSE so status is checked,
 dev_err(player->dev, "FIFO underflow error detected") is printed
and then snd_pcm_stream_lock should be called to lock stream for stopping.
- On CPU 1: application stop and close the stream.
Issue is that the stop and shutdown functions are executed while
"FIFO underflow error detected" is printed.
So when CPU 0 calls snd_pcm_stream_lock, player->substream is already null.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@st.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2017-04-06 19:29:07 +01:00
..
Kconfig ASoC: Add ability to build sti drivers 2015-07-16 21:38:24 +01:00
Makefile ASoC: Add ability to build sti drivers 2015-07-16 21:38:24 +01:00
sti_uniperif.c ASoC: sti: reset refactoring 2016-10-26 11:41:11 +01:00
uniperif.h ASoC: STI: Fix null ptr deference in IRQ handler 2017-04-06 19:29:07 +01:00
uniperif_player.c ASoC: STI: Fix null ptr deference in IRQ handler 2017-04-06 19:29:07 +01:00
uniperif_reader.c ASoC: STI: Fix null ptr deference in IRQ handler 2017-04-06 19:29:07 +01:00