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.
Regards,
Czarek