From: Zhou Guanghui <zhouguanghui1@huawei.com>
To: <akpm@linux-foundation.org>, <rppt@kernel.org>
Cc: <linux-kernel@vger.kernel.org>, <linux-mm@kvack.org>,
<xuqiang36@huawei.com>, <zhouguanghui1@huawei.com>
Subject: [PATCH] memblock: config the number of init memblock regions
Date: Wed, 11 May 2022 01:05:30 +0000 [thread overview]
Message-ID: <20220511010530.60962-1-zhouguanghui1@huawei.com> (raw)
During early boot, the number of memblocks may exceed 128(some memory
areas are not reported to the kernel due to test failures. As a result,
contiguous memory is divided into multiple parts for reporting). If
the size of the init memblock regions is exceeded before the array size
can be resized, the excess memory will be lost.
Signed-off-by: Zhou Guanghui <zhouguanghui1@huawei.com>
---
mm/Kconfig | 8 ++++++++
mm/memblock.c | 2 +-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/mm/Kconfig b/mm/Kconfig
index 034d87953600..c6881802cccc 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -89,6 +89,14 @@ config SPARSEMEM_VMEMMAP
pfn_to_page and page_to_pfn operations. This is the most
efficient option when sufficient kernel resources are available.
+config MEMBLOCK_INIT_REGIONS
+ int "Number of init memblock regions"
+ range 128 1024
+ default 128
+ help
+ The number of init memblock regions which used to track "memory" and
+ "reserved" memblocks during early boot.
+
config HAVE_MEMBLOCK_PHYS_MAP
bool
diff --git a/mm/memblock.c b/mm/memblock.c
index e4f03a6e8e56..6893d26b750e 100644
--- a/mm/memblock.c
+++ b/mm/memblock.c
@@ -22,7 +22,7 @@
#include "internal.h"
-#define INIT_MEMBLOCK_REGIONS 128
+#define INIT_MEMBLOCK_REGIONS CONFIG_MEMBLOCK_INIT_REGIONS
#define INIT_PHYSMEM_REGIONS 4
#ifndef INIT_MEMBLOCK_RESERVED_REGIONS
--
2.17.1
next reply other threads:[~2022-05-11 1:10 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-11 1:05 Zhou Guanghui [this message]
2022-05-11 1:55 ` Andrew Morton
2022-05-11 6:03 ` Mike Rapoport
2022-05-12 2:46 ` Zhouguanghui (OS Kernel)
2022-05-12 6:28 ` Mike Rapoport
2022-05-25 16:44 ` Darren Hart
2022-05-25 17:12 ` Mike Rapoport
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=20220511010530.60962-1-zhouguanghui1@huawei.com \
--to=zhouguanghui1@huawei.com \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=rppt@kernel.org \
--cc=xuqiang36@huawei.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