Message ID | 20180328134520.1970967-1-arnd@arndb.de |
---|---|
State | New |
Headers | show |
Series | thermal: exynos_tmu: avoid uninitialized variables | expand |
On Wednesday, March 28, 2018 03:44:44 PM Arnd Bergmann wrote: > Removing the initialization in the error case introduced > a compile-time warning: > > drivers/thermal/samsung/exynos_tmu.c: In function 'temp_to_code': > drivers/thermal/samsung/exynos_tmu.c:304:9: error: 'temp_code' may be used uninitialized in this function [-Werror=maybe-uninitialized] > return temp_code; > ^~~~~~~~~ > drivers/thermal/samsung/exynos_tmu.c: In function 'exynos_get_temp': > drivers/thermal/samsung/exynos_tmu.c:931:37: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] > *temp = code_to_temp(data, value) * MCELSIUS; > > Let's assume the runtime warning is sufficient, and make it > return a well-defined number instead of unintialized data. > > Fixes: 480b5bfc16e1 ("thermal: exynos: remove parsing of samsung, tmu_default_temp_offset property") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Thanks Arnd! Acked-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c index 2ec854851da1..7e351fffdaee 100644 --- a/drivers/thermal/samsung/exynos_tmu.c +++ b/drivers/thermal/samsung/exynos_tmu.c @@ -298,6 +298,7 @@ static int temp_to_code(struct exynos_tmu_data *data, u8 temp) break; default: WARN_ON(1); + temp_code = 0; break; } @@ -324,6 +325,7 @@ static int code_to_temp(struct exynos_tmu_data *data, u16 temp_code) break; default: WARN_ON(1); + temp = 0; break; }
Removing the initialization in the error case introduced a compile-time warning: drivers/thermal/samsung/exynos_tmu.c: In function 'temp_to_code': drivers/thermal/samsung/exynos_tmu.c:304:9: error: 'temp_code' may be used uninitialized in this function [-Werror=maybe-uninitialized] return temp_code; ^~~~~~~~~ drivers/thermal/samsung/exynos_tmu.c: In function 'exynos_get_temp': drivers/thermal/samsung/exynos_tmu.c:931:37: error: 'temp' may be used uninitialized in this function [-Werror=maybe-uninitialized] *temp = code_to_temp(data, value) * MCELSIUS; Let's assume the runtime warning is sufficient, and make it return a well-defined number instead of unintialized data. Fixes: 480b5bfc16e1 ("thermal: exynos: remove parsing of samsung, tmu_default_temp_offset property") Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- drivers/thermal/samsung/exynos_tmu.c | 2 ++ 1 file changed, 2 insertions(+) -- 2.9.0 -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html