Merge tag 'LA.UM.9.12.r1-15200-SMxx50.QSSI13.0' of https://git.codelinaro.org/clo/la/platform/vendor/opensource/audio-kernel into android13-4.19-kona
"LA.UM.9.12.r1-15200-SMxx50.QSSI13.0" * tag 'LA.UM.9.12.r1-15200-SMxx50.QSSI13.0' of https://git.codelinaro.org/clo/la/platform/vendor/opensource/audio-kernel: ASoC: msm-pcm-q6-v2: Add dsp buf check Change-Id: I1ccef3e449405bce0d487f094ad8334059c66758
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0-only
|
// SPDX-License-Identifier: GPL-2.0-only
|
||||||
/* Copyright (c) 2012-2021, The Linux Foundation. All rights reserved.
|
/* Copyright (c) 2012-2021, The Linux Foundation. All rights reserved.
|
||||||
|
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@@ -1007,6 +1008,14 @@ static int msm_pcm_capture_copy(struct snd_pcm_substream *substream,
|
|||||||
xfer = size;
|
xfer = size;
|
||||||
offset = prtd->in_frame_info[idx].offset;
|
offset = prtd->in_frame_info[idx].offset;
|
||||||
pr_debug("Offset value = %d\n", offset);
|
pr_debug("Offset value = %d\n", offset);
|
||||||
|
|
||||||
|
if (offset >= size) {
|
||||||
|
pr_err("%s: Invalid dsp buf offset\n", __func__);
|
||||||
|
ret = -EFAULT;
|
||||||
|
q6asm_cpu_buf_release(OUT, prtd->audio_client);
|
||||||
|
goto fail;
|
||||||
|
}
|
||||||
|
|
||||||
if (size == 0 || size < prtd->pcm_count) {
|
if (size == 0 || size < prtd->pcm_count) {
|
||||||
memset(bufptr + offset + size, 0, prtd->pcm_count - size);
|
memset(bufptr + offset + size, 0, prtd->pcm_count - size);
|
||||||
if (fbytes > prtd->pcm_count)
|
if (fbytes > prtd->pcm_count)
|
||||||
|
|||||||
Reference in New Issue
Block a user