]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ASoC: q6apm-dai: make use of q6apm_get_hw_pointer
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Fri, 14 Mar 2025 17:47:58 +0000 (17:47 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 May 2025 05:50:39 +0000 (07:50 +0200)
commit8df02691d09ecc0339dd7d5f7a50d074ae779c41
tree2ea732c10ccaa9394dda015cd8dee995f0d9f2f7
parent175cb0c28aea537f58371474a3aa50a98e9be9f1
ASoC: q6apm-dai: make use of q6apm_get_hw_pointer

[ Upstream commit a93dad6f4e6a04a5943f6ee5686585f24abf7063 ]

With the existing code, the buffer position is only reset in pointer
callback, which leaves the possiblity of it going over the size of
buffer size and reporting incorrect position to userspace.

Without this patch, its possible to see errors like:
snd-x1e80100 sound: invalid position: pcmC0D0p:0, pos = 12288, buffer size = 12288, period size = 1536
snd-x1e80100 sound: invalid position: pcmC0D0p:0, pos = 12288, buffer size = 12288, period size = 1536

Fixes: 9b4fe0f1cd791 ("ASoC: qdsp6: audioreach: add q6apm-dai support")
Cc: stable@vger.kernel.org
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Tested-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Tested-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://patch.msgid.link/20250314174800.10142-4-srinivas.kandagatla@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/qcom/qdsp6/q6apm-dai.c