2023-04-17 23:15:38

by Tom Rix

[permalink] [raw]
Subject: [PATCH] module: remove use of uninitialized variable len

clang build reports
kernel/module/stats.c:307:34: error: variable
'len' is uninitialized when used here [-Werror,-Wuninitialized]
len = scnprintf(buf + 0, size - len,
^~~
At the start of this sequence, neither the '+ 0', nor the '- len' are needed.
So remove them and fix using 'len' uninitalized.

Fixes: 0d4ab68ce983 ("module: add debug stats to help identify memory pressure")
Signed-off-by: Tom Rix <[email protected]>
---
kernel/module/stats.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/module/stats.c b/kernel/module/stats.c
index d9b9bccf4256..f0619170bd3d 100644
--- a/kernel/module/stats.c
+++ b/kernel/module/stats.c
@@ -304,7 +304,7 @@ static ssize_t read_file_mod_stats(struct file *file, char __user *user_buf,
return -ENOMEM;

/* The beginning of our debug preamble */
- len = scnprintf(buf + 0, size - len, "%25s\t%u\n", "Mods ever loaded", live_mod_count);
+ len = scnprintf(buf, size, "%25s\t%u\n", "Mods ever loaded", live_mod_count);

len += scnprintf(buf + len, size - len, "%25s\t%u\n", "Mods failed on kread", fkreads);

--
2.27.0


2023-04-17 23:34:10

by Luis Chamberlain

[permalink] [raw]
Subject: Re: [PATCH] module: remove use of uninitialized variable len

On Mon, Apr 17, 2023 at 07:09:57PM -0400, Tom Rix wrote:
> clang build reports
> kernel/module/stats.c:307:34: error: variable
> 'len' is uninitialized when used here [-Werror,-Wuninitialized]
> len = scnprintf(buf + 0, size - len,
> ^~~
> At the start of this sequence, neither the '+ 0', nor the '- len' are needed.
> So remove them and fix using 'len' uninitalized.
>
> Fixes: 0d4ab68ce983 ("module: add debug stats to help identify memory pressure")
> Signed-off-by: Tom Rix <[email protected]>
> ---

Thanks, applied and pushed!

Luis