ALSA: pcm: Add stream lock during PCM reset ioctl operations
authorTakashi Iwai <tiwai@suse.de>
Tue, 22 Mar 2022 17:13:25 +0000 (18:13 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 28 Mar 2022 06:06:05 +0000 (08:06 +0200)
commit6c9f0dd8f00e525a3726d12f7b83ad05d01f9df3
tree4b278209b1cb757091472d42256b91283b2de4c4
parent0a7aad979bfb43c4a78d33a5f356caf4ceb28bca
ALSA: pcm: Add stream lock during PCM reset ioctl operations

commit 1f68915b2efd0d6bfd6e124aa63c94b3c69f127c upstream.

snd_pcm_reset() is a non-atomic operation, and it's allowed to run
during the PCM stream running.  It implies that the manipulation of
hw_ptr and other parameters might be racy.

This patch adds the PCM stream lock at appropriate places in
snd_pcm_*_reset() actions for covering that.

Cc: <stable@vger.kernel.org>
Reviewed-by: Jaroslav Kysela <perex@perex.cz>
Link: https://lore.kernel.org/r/20220322171325.4355-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/core/pcm_native.c