]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - queue-4.19/soc-mediatek-pwrap-zero-initialize-rdata-in-pwrap_in.patch
fe04eda6a33d69b9bc2ea0fd2e70024defdc5e03
[thirdparty/kernel/stable-queue.git] / queue-4.19 / soc-mediatek-pwrap-zero-initialize-rdata-in-pwrap_in.patch
1 From d828984393790686602bd1d16e73a5a05772480f Mon Sep 17 00:00:00 2001
2 From: Nathan Chancellor <natechancellor@gmail.com>
3 Date: Thu, 7 Mar 2019 15:56:51 -0700
4 Subject: soc: mediatek: pwrap: Zero initialize rdata in pwrap_init_cipher
5
6 [ Upstream commit 89e28da82836530f1ac7a3a32fecc31f22d79b3e ]
7
8 When building with -Wsometimes-uninitialized, Clang warns:
9
10 drivers/soc/mediatek/mtk-pmic-wrap.c:1358:6: error: variable 'rdata' is
11 used uninitialized whenever '||' condition is true
12 [-Werror,-Wsometimes-uninitialized]
13
14 If pwrap_write returns non-zero, pwrap_read will not be called to
15 initialize rdata, meaning that we will use some random uninitialized
16 stack value in our print statement. Zero initialize rdata in case this
17 happens.
18
19 Link: https://github.com/ClangBuiltLinux/linux/issues/401
20 Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
21 Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
22 Reviewed-by: Arnd Bergmann <arnd@arndb.de>
23 Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
24 Signed-off-by: Sasha Levin <sashal@kernel.org>
25 ---
26 drivers/soc/mediatek/mtk-pmic-wrap.c | 2 +-
27 1 file changed, 1 insertion(+), 1 deletion(-)
28
29 diff --git a/drivers/soc/mediatek/mtk-pmic-wrap.c b/drivers/soc/mediatek/mtk-pmic-wrap.c
30 index 4e931fdf4d09..011a40b5fb49 100644
31 --- a/drivers/soc/mediatek/mtk-pmic-wrap.c
32 +++ b/drivers/soc/mediatek/mtk-pmic-wrap.c
33 @@ -1104,7 +1104,7 @@ static bool pwrap_is_pmic_cipher_ready(struct pmic_wrapper *wrp)
34 static int pwrap_init_cipher(struct pmic_wrapper *wrp)
35 {
36 int ret;
37 - u32 rdata;
38 + u32 rdata = 0;
39
40 pwrap_writel(wrp, 0x1, PWRAP_CIPHER_SWRST);
41 pwrap_writel(wrp, 0x0, PWRAP_CIPHER_SWRST);
42 --
43 2.20.1
44