From: Takashi Iwai Date: Thu, 11 Jul 2013 16:00:01 +0000 (+0200) Subject: ASoC: atmel: Fix unlocked snd_pcm_stop() call X-Git-Tag: upstream/snapshot3+hdmi~4491^2~26 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=571185717f8d7f2a088a7ac38d94a9ad5fd9da5c;p=platform%2Fadaptation%2Frenesas_rcar%2Frenesas_kernel.git ASoC: atmel: Fix unlocked snd_pcm_stop() call snd_pcm_stop() must be called in the PCM substream lock context. Cc: Acked-by: Mark Brown Signed-off-by: Takashi Iwai --- diff --git a/sound/soc/atmel/atmel-pcm-dma.c b/sound/soc/atmel/atmel-pcm-dma.c index 1d38fd0..d128265 100644 --- a/sound/soc/atmel/atmel-pcm-dma.c +++ b/sound/soc/atmel/atmel-pcm-dma.c @@ -81,7 +81,9 @@ static void atmel_pcm_dma_irq(u32 ssc_sr, /* stop RX and capture: will be enabled again at restart */ ssc_writex(prtd->ssc->regs, SSC_CR, prtd->mask->ssc_disable); + snd_pcm_stream_lock(substream); snd_pcm_stop(substream, SNDRV_PCM_STATE_XRUN); + snd_pcm_stream_unlock(substream); /* now drain RHR and read status to remove xrun condition */ ssc_readx(prtd->ssc->regs, SSC_RHR);