From: Andrew Morton <akpm@linux-foundation.org>
To: Mike Rapoport <rppt@kernel.org>
Cc: Nathan Chancellor <nathan@kernel.org>,
Zhenguo Yao <yaozhenguo1@gmail.com>,
mike.kravetz@oracle.com, mpe@ellerman.id.au,
benh@kernel.crashing.org, paulus@samba.org, corbet@lwn.net,
yaozhenguo@jd.com, willy@infradead.org,
linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org,
linux-mm@kvack.org, llvm@lists.linux.dev
Subject: Re: [PATCH v7] hugetlbfs: Extend the definition of hugepages parameter to support node allocation
Date: Wed, 29 Sep 2021 16:25:38 -0700 [thread overview]
Message-ID: <20210929162538.5c1452d63e064bf9da3cc9e5@linux-foundation.org> (raw)
In-Reply-To: <YVToRpjbg5mO0bru@kernel.org>
On Wed, 29 Sep 2021 15:27:18 -0700 Mike Rapoport <rppt@kernel.org> wrote:
> > mm/hugetlb.c:2957:33: error: variable 'm' is used uninitialized whenever '&&' condition is false [-Werror,-Wsometimes-uninitialized]
> > for_each_node_mask_to_alloc(h, nr_nodes, node, &node_states[N_MEMORY]) {
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > mm/hugetlb.c:1254:3: note: expanded from macro 'for_each_node_mask_to_alloc'
> > nr_nodes > 0 && \
> > ^~~~~~~~~~~~
> > mm/hugetlb.c:2974:18: note: uninitialized use occurs here
> > INIT_LIST_HEAD(&m->list);
> > ^
> > mm/hugetlb.c:2957:33: note: remove the '&&' if its condition is always true
> > for_each_node_mask_to_alloc(h, nr_nodes, node, &node_states[N_MEMORY]) {
> > ^
> > mm/hugetlb.c:2942:29: note: initialize the variable 'm' to silence this warning
> > struct huge_bootmem_page *m;
> > ^
> > = NULL
> > 1 error generated.
> >
> > I am not sure if it is possible for nr_nodes to be 0 right out of the
> > gate so might be a false positive?
>
> With nr_nodes == 0 there will be no memory in the system :)
Let's keep clang happy?
--- a/mm/hugetlb.c~hugetlbfs-extend-the-definition-of-hugepages-parameter-to-support-node-allocation-fix
+++ a/mm/hugetlb.c
@@ -2939,7 +2939,7 @@ int alloc_bootmem_huge_page(struct hstat
__attribute__ ((weak, alias("__alloc_bootmem_huge_page")));
int __alloc_bootmem_huge_page(struct hstate *h, int nid)
{
- struct huge_bootmem_page *m;
+ struct huge_bootmem_page *m = NULL; /* initialize for clang */
int nr_nodes, node;
if (nid >= nr_online_nodes)
_
next prev parent reply other threads:[~2021-09-29 23:25 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-27 10:41 Zhenguo Yao
2021-09-28 16:47 ` Mike Rapoport
2021-09-29 5:38 ` Zhenguo Yao
2021-09-29 19:24 ` Nathan Chancellor
2021-09-29 22:27 ` Mike Rapoport
2021-09-29 23:25 ` Andrew Morton [this message]
2021-10-01 22:33 ` Mike Kravetz
2021-10-04 15:06 ` Zhenguo Yao
2021-10-04 17:34 ` Mike Kravetz
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=20210929162538.5c1452d63e064bf9da3cc9e5@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=benh@kernel.crashing.org \
--cc=corbet@lwn.net \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=llvm@lists.linux.dev \
--cc=mike.kravetz@oracle.com \
--cc=mpe@ellerman.id.au \
--cc=nathan@kernel.org \
--cc=paulus@samba.org \
--cc=rppt@kernel.org \
--cc=willy@infradead.org \
--cc=yaozhenguo1@gmail.com \
--cc=yaozhenguo@jd.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