]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ALSA: au88x0: Fix array bounds warning in EQ drivers
authorwangdicheng <wangdicheng@kylinos.cn>
Fri, 7 Nov 2025 02:45:25 +0000 (10:45 +0800)
committerTakashi Iwai <tiwai@suse.de>
Sat, 8 Nov 2025 07:54:40 +0000 (08:54 +0100)
In file included from ../sound/pci/au88x0/au8830.c:15:
In function ‘vortex_Eqlzr_SetAllBandsFromActiveCoeffSet’,
../sound/pci/au88x0/au88x0_eq.c:571:9: error: ‘vortex_EqHw_SetRightGainsTarget’ reading 2 bytes from a region of size 0 [-Werror=stringop-overread]
vortex_EqHw_SetRightGainsTarget(vortex, &(eq->this130[eq->this10]));

Modified the array access in vortex_Eqlzr_SetAllBandsFromActiveCoeffSet() to use pointer arithmetic instead of array indexing.
This resolves a compiler warning that incorrectly flagged a buffer overread when accessing the EQ gain array.
The this130 array has fixed size 20 and the index is safely within bounds, making the original code correct but confusing to static analysis.

Signed-off-by: wangdicheng <wangdicheng@kylinos.cn>
Link: https://patch.msgid.link/20251107024525.38454-1-wangdich9700@163.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/au88x0/au88x0_eq.c

index 71c13100d7ef1cac8a928f2015c759e300638dd9..81a63b5bb31cc33f427f8657c84e35e981d5b15f 100644 (file)
@@ -568,7 +568,7 @@ static int vortex_Eqlzr_SetAllBandsFromActiveCoeffSet(vortex_t * vortex)
        eqlzr_t *eq = &(vortex->eq);
 
        vortex_EqHw_SetLeftGainsTarget(vortex, eq->this130);
-       vortex_EqHw_SetRightGainsTarget(vortex, &(eq->this130[eq->this10]));
+       vortex_EqHw_SetRightGainsTarget(vortex, eq->this130 + eq->this10);
 
        return 0;
 }