From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-Id: <20130911042853.349930856@goodmis.org> Date: Wed, 11 Sep 2013 00:27:14 -0400 From: Steven Rostedt To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Mark Brown , Takashi Iwai Subject: [007/251] ALSA: pxa2xx: Fix unlocked snd_pcm_stop() call References: <20130911042707.738353451@goodmis.org> Content-Disposition: inline; filename=0007-ALSA-pxa2xx-Fix-unlocked-snd_pcm_stop-call.patch Sender: linux-kernel-owner@vger.kernel.org List-ID: 3.6.11.9-rc1 stable review patch. If anyone has any objections, please let me know. ------------------ From: Takashi Iwai [ Upstream commit 46f6c1aaf790be9ea3c8ddfc8f235a5f677d08e2 ] snd_pcm_stop() must be called in the PCM substream lock context. Cc: Acked-by: Mark Brown Signed-off-by: Takashi Iwai Signed-off-by: Steven Rostedt --- sound/arm/pxa2xx-pcm-lib.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sound/arm/pxa2xx-pcm-lib.c b/sound/arm/pxa2xx-pcm-lib.c index 76e0d56..823359e 100644 --- a/sound/arm/pxa2xx-pcm-lib.c +++ b/sound/arm/pxa2xx-pcm-lib.c @@ -166,7 +166,9 @@ void pxa2xx_pcm_dma_irq(int dma_ch, void *dev_id) } else { printk(KERN_ERR "%s: DMA error on channel %d (DCSR=%#x)\n", rtd->params->name, dma_ch, dcsr); + snd_pcm_stream_lock(substream); snd_pcm_stop(substream, SNDRV_PCM_STATE_XRUN); + snd_pcm_stream_unlock(substream); } } EXPORT_SYMBOL(pxa2xx_pcm_dma_irq); -- 1.7.10.4