From: Dennis Zhou <dennis@kernel.org>
To: trix@redhat.com
Cc: tj@kernel.org, cl@linux.com, akpm@linux-foundation.org,
linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] percpu: initialize best_upa variable
Date: Mon, 17 May 2021 02:05:11 +0000 [thread overview]
Message-ID: <YKHPV4QAXmaWb6jJ@google.com> (raw)
In-Reply-To: <20210515180817.1751084-1-trix@redhat.com>
Hello,
On Sat, May 15, 2021 at 11:08:17AM -0700, trix@redhat.com wrote:
> From: Tom Rix <trix@redhat.com>
>
> Static analysis reports this problem
> percpu.c:2945:6: warning: Assigned value is garbage or undefined
> upa = best_upa;
> ^ ~~~~~~~~
> best_upa may not be set, so initialize it.
>
> Signed-off-by: Tom Rix <trix@redhat.com>
> ---
> mm/percpu.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/mm/percpu.c b/mm/percpu.c
> index a257c3efdf18b..6578b706fae81 100644
> --- a/mm/percpu.c
> +++ b/mm/percpu.c
> @@ -2916,6 +2916,7 @@ static struct pcpu_alloc_info * __init __flatten pcpu_build_alloc_info(
> * Related to atom_size, which could be much larger than the unit_size.
> */
> last_allocs = INT_MAX;
> + best_upa = max_upa;
> for (upa = max_upa; upa; upa--) {
> int allocs = 0, wasted = 0;
>
> --
> 2.26.3
>
I think the proper fix would be:
best_upa = 0;
for (...) { }
BUG_ON(!best_upa);
upa = best_upa;
If you're fine with this I'll make the changes and apply it to
for-5.13-fixes.
Can you also tell me what static analysis tool produced this? I'm just a
little curious because this code hasn't changed in several years so I'd
have expected some static analyzer to have caught this by now.
Thanks,
Dennis
next prev parent reply other threads:[~2021-05-17 2:05 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-15 18:08 trix
2021-05-16 23:45 ` Wonhyuk Yang
2021-05-17 2:05 ` Dennis Zhou [this message]
2021-05-17 11:06 ` Wonhyuk Yang
2021-05-17 13:17 ` Tom Rix
2021-05-17 14:39 ` Dennis Zhou
2021-05-27 20:24 ` Dennis Zhou
2021-05-27 21:09 ` Tom Rix
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YKHPV4QAXmaWb6jJ@google.com \
--to=dennis@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=cl@linux.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=tj@kernel.org \
--cc=trix@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox