From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 484F4C433EF for ; Wed, 29 Sep 2021 23:25:42 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id D73F861527 for ; Wed, 29 Sep 2021 23:25:41 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org D73F861527 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=linux-foundation.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id 22F8194006B; Wed, 29 Sep 2021 19:25:41 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1DEB594003A; Wed, 29 Sep 2021 19:25:41 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0CD9794006B; Wed, 29 Sep 2021 19:25:41 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0067.hostedemail.com [216.40.44.67]) by kanga.kvack.org (Postfix) with ESMTP id F155994003A for ; Wed, 29 Sep 2021 19:25:40 -0400 (EDT) Received: from smtpin14.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id AA74639BBC for ; Wed, 29 Sep 2021 23:25:40 +0000 (UTC) X-FDA: 78642195240.14.DF8FF02 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by imf27.hostedemail.com (Postfix) with ESMTP id 54C7170000BD for ; Wed, 29 Sep 2021 23:25:40 +0000 (UTC) Received: by mail.kernel.org (Postfix) with ESMTPSA id 0A2AB61504; Wed, 29 Sep 2021 23:25:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1632957939; bh=xUoojM5baZbirs9n9pr5p0EQ68LtFMWxRkYfM9vHTrk=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=xXoW1nkhG5+Xw7yT2XvU8PGVUVE/7WTX2YuRi/JaC+nKLFdktXY5T00uXpCkrHVOH nhCsbNPC43twMUhs60qozYairoRHpJQrynslXyqCgZ+e0ra8zVcs47mXjoYC4zCNwq crlC5ixAuTkJMRo7zORBkUtvy5sbGpEoaUuH4v8s= Date: Wed, 29 Sep 2021 16:25:38 -0700 From: Andrew Morton To: Mike Rapoport Cc: Nathan Chancellor , Zhenguo Yao , 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 Message-Id: <20210929162538.5c1452d63e064bf9da3cc9e5@linux-foundation.org> In-Reply-To: References: <20210927104149.46884-1-yaozhenguo1@gmail.com> X-Mailer: Sylpheed 3.5.1 (GTK+ 2.24.31; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 54C7170000BD X-Stat-Signature: gd73xzbag1qac7w4kco58skrxe9nfz3i Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=xXoW1nkh; dmarc=none; spf=pass (imf27.hostedemail.com: domain of akpm@linux-foundation.org designates 198.145.29.99 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org X-HE-Tag: 1632957940-66298 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Wed, 29 Sep 2021 15:27:18 -0700 Mike Rapoport 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) _