]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
iio: adc: mt6359: fix unchecked return value in mt6358_read_imp
authorSalah Triki <salah.triki@gmail.com>
Mon, 27 Apr 2026 20:12:38 +0000 (21:12 +0100)
committerJonathan Cameron <jic23@kernel.org>
Fri, 15 May 2026 11:04:11 +0000 (12:04 +0100)
In mt6358_read_imp(), the variable val_v is passed to regmap_read()
but the return value is not checked. If the read fails, val_v remains
uninitialized and its random stack content is subsequently reported
as a measurement result.

Initialize val_v to zero to ensure a predictable value is reported
in case of bus failure and to prevent potential stack data leakage.
This also satisfies static analyzers that might otherwise flag the
variable as used uninitialized.

Fixes: 3587914bf61d ("iio: adc: Add support for MediaTek MT6357/8/9 Auxiliary ADC")
Signed-off-by: Salah Triki <salah.triki@gmail.com>
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
drivers/iio/adc/mt6359-auxadc.c

index 6b9ed9b1fde2e2f9bed26cd6063907fab51e1118..1d9724ef09838a7fc1b7ccff41a9cc9b9c32bd28 100644 (file)
@@ -497,6 +497,7 @@ static int mt6358_read_imp(struct mt6359_auxadc *adc_dev,
                return ret;
 
        /* Read the params before stopping */
+       val_v = 0;
        regmap_read(regmap, reg_adc0 + (cinfo->imp_adc_num << 1), &val_v);
 
        mt6358_stop_imp_conv(adc_dev);