ASoC: wm_adsp: Avoid narrow race condition on compr pointer

There is a very small window between then wm_adsp_compr_free gets call
and when the DSP is actually powered down. If we get an IRQ from the DSP
in this window then the wm_adsp_compr pointer will be NULL. This patch
adds a check for this into the IRQ handler to avoid any issues when this
happens.

Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Charles Keepax 2016-02-19 14:44:41 +00:00 committed by Mark Brown
parent da2b335890
commit c7dae7c4c6

View File

@ -2845,7 +2845,7 @@ int wm_adsp_compr_handle_irq(struct wm_adsp *dsp)
goto out;
}
if (compr->stream)
if (compr && compr->stream)
snd_compr_fragment_elapsed(compr->stream);
out: