[PATCH v2 1/2] ASoC: Intel: avs: Lock substream before snd_pcm_stop()
Takashi Iwai
tiwai at suse.de
Mon Nov 14 14:28:14 CET 2022
On Mon, 14 Nov 2022 14:25:31 +0100,
Cezary Rojewski wrote:
>
> On 2022-11-14 2:16 PM, Takashi Iwai wrote:
> > On Mon, 14 Nov 2022 14:00:12 +0100,
> > Takashi Iwai wrote:
> >> On Mon, 14 Nov 2022 12:37:28 +0100,
> >> Cezary Rojewski wrote:
>
> ...
>
> >>> @@ -123,7 +123,9 @@ static void avs_dsp_recovery(struct avs_dev *adev)
> >>> if (!substream || !substream->runtime)
> >>> continue;
> >>> + snd_pcm_stream_lock(substream);
> >>> snd_pcm_stop(substream, SNDRV_PCM_STATE_DISCONNECTED);
> >>> + snd_pcm_stream_unlock(substream);
> >>
> >> Isn't it in the interruptible context? If so, you need the _irq()
> >> variant.
>
> Thanks for paying attention to detail, Takashi.
>
> > Correction: when it's a non-atomic stream, that doesn't matter, both
> > are identical.
>
> In regard to the point found above, that's precisely why I decided to
> use variant with shorten name. Matter of taste I guess. Can switch to
> _irq() if you believe it's the correct approach.
It's fine in both ways. For the snd_pcm_stream_lock(), maybe worth to
put a comment, though.
thanks,
Takashi
More information about the Alsa-devel
mailing list