ALSA: dmaengine: increment buffer pointer atomically
authorAndreas Pape <apape@de.adit-jv.com>
Mon, 26 Sep 2022 16:58:13 +0000 (18:58 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 26 Oct 2022 11:17:01 +0000 (13:17 +0200)
commit831a7b5002940f83de024d66c233f6953e32c900
treeea1187e4f56fb6b72525e58b6b2066145d124613
parent3253799286c2e2ff5700fa94d8eece2d0faac5cd
ALSA: dmaengine: increment buffer pointer atomically

[ Upstream commit d1c442019594692c64a70a86ad88eb5b6db92216 ]

Setting pointer and afterwards checking for wraparound leads
to the possibility of returning the inconsistent pointer position.

This patch increments buffer pointer atomically to avoid this issue.

Fixes: e7f73a1613567a ("ASoC: Add dmaengine PCM helper functions")
Signed-off-by: Andreas Pape <apape@de.adit-jv.com>
Signed-off-by: Eugeniu Rosca <erosca@de.adit-jv.com>
Link: https://lore.kernel.org/r/1664211493-11789-1-git-send-email-erosca@de.adit-jv.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/core/pcm_dmaengine.c