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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5230FC433FE for ; Tue, 28 Dec 2021 01:37:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5218F6B0072; Mon, 27 Dec 2021 20:37:00 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 4CF516B0073; Mon, 27 Dec 2021 20:37:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 36FF06B0074; Mon, 27 Dec 2021 20:37:00 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0200.hostedemail.com [216.40.44.200]) by kanga.kvack.org (Postfix) with ESMTP id 250886B0072 for ; Mon, 27 Dec 2021 20:37:00 -0500 (EST) Received: from smtpin26.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id C9A1A8249980 for ; Tue, 28 Dec 2021 01:36:59 +0000 (UTC) X-FDA: 78965489358.26.1E0B2CC Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by imf22.hostedemail.com (Postfix) with ESMTP id 9E3DAC0003 for ; Tue, 28 Dec 2021 01:36:57 +0000 (UTC) Received: from dggpemm500022.china.huawei.com (unknown [172.30.72.55]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4JNHDb4YjGz91ys; Tue, 28 Dec 2021 09:35:59 +0800 (CST) Received: from dggpemm500001.china.huawei.com (7.185.36.107) by dggpemm500022.china.huawei.com (7.185.36.162) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Tue, 28 Dec 2021 09:36:54 +0800 Received: from [10.174.177.243] (10.174.177.243) by dggpemm500001.china.huawei.com (7.185.36.107) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.2308.20; Tue, 28 Dec 2021 09:36:53 +0800 Message-ID: <8f30057e-da61-55b4-adf7-e35d91798806@huawei.com> Date: Tue, 28 Dec 2021 09:36:53 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.2.0 Subject: Re: (No subject) Content-Language: en-US To: William Kucharski CC: Jonathan Corbet , Andrew Morton , "linuxppc-dev@lists.ozlabs.org" , "linux-doc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-mm@kvack.org" , "x86@kernel.org" , "linux-arm-kernel@lists.infradead.org" , Nicholas Piggin , Catalin Marinas , Will Deacon , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , Michael Ellerman , Benjamin Herrenschmidt , Paul Mackerras , Christophe Leroy , "Matthew Wilcox" References: <20211227145903.187152-3-wangkefeng.wang@huawei.com> From: Kefeng Wang In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed X-Originating-IP: [10.174.177.243] X-ClientProxiedBy: dggeme702-chm.china.huawei.com (10.1.199.98) To dggpemm500001.china.huawei.com (7.185.36.107) X-CFilter-Loop: Reflected Authentication-Results: imf22.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf22.hostedemail.com: domain of wangkefeng.wang@huawei.com designates 45.249.212.188 as permitted sender) smtp.mailfrom=wangkefeng.wang@huawei.com X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 9E3DAC0003 X-Stat-Signature: 9qgj6k5otcyhy6mx8azzgersco5r1zqt X-HE-Tag: 1640655417-632378 Content-Transfer-Encoding: quoted-printable 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 2021/12/28 1:35, William Kucharski wrote: > You should also fix the existing typo in the documentation (inline): > >> On Dec 27, 2021, at 07:49, Kefeng Wang wr= ote: >> >> =EF=BB=BFThis patch select HAVE_ARCH_HUGE_VMALLOC to let arm64 support= huge >> vmalloc mappings. >> >> Cc: Catalin Marinas >> Cc: Will Deacon >> Signed-off-by: Kefeng Wang >> --- >> Documentation/admin-guide/kernel-parameters.txt | 4 ++-- >> arch/arm64/Kconfig | 1 + >> arch/arm64/kernel/module.c | 5 +++-- >> 3 files changed, 6 insertions(+), 4 deletions(-) >> >> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documen= tation/admin-guide/kernel-parameters.txt >> index 7b2f900fd243..e3f9fd7ec106 100644 >> --- a/Documentation/admin-guide/kernel-parameters.txt >> +++ b/Documentation/admin-guide/kernel-parameters.txt >> @@ -1639,7 +1639,7 @@ >> precedence over memory_hotplug.memmap_on_memory. >> >> >> - hugevmalloc=3D [PPC] Reguires CONFIG_HAVE_ARCH_HUGE_VMALLOC >> + hugevmalloc=3D [KNL,PPC,ARM64] Reguires CONFIG_HAVE_ARCH_HUGE_= VMALLOC >> Format: { on | off } >> Default set by CONFIG_HUGE_VMALLOC_DEFAULT_ENABLED. > "Reguires" should be "Requires." Will fix, thanks. > >> @@ -3424,7 +3424,7 @@ >> >> nohugeiomap [KNL,X86,PPC,ARM64] Disable kernel huge I/O mapping= s. >> >> - nohugevmalloc [PPC] Disable kernel huge vmalloc mappings. >> + nohugevmalloc [KNL,PPC,ARM64] Disable kernel huge vmalloc mapp= ings. >> >> nosmt [KNL,S390] Disable symmetric multithreading (SMT). >> Equivalent to smt=3D1. >> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig >> index 3bb0b67292b5..c34bbb4482b0 100644 >> --- a/arch/arm64/Kconfig >> +++ b/arch/arm64/Kconfig >> @@ -142,6 +142,7 @@ config ARM64 >> select HAVE_ARCH_AUDITSYSCALL >> select HAVE_ARCH_BITREVERSE >> select HAVE_ARCH_COMPILER_H >> + select HAVE_ARCH_HUGE_VMALLOC >> select HAVE_ARCH_HUGE_VMAP >> select HAVE_ARCH_JUMP_LABEL >> select HAVE_ARCH_JUMP_LABEL_RELATIVE >> diff --git a/arch/arm64/kernel/module.c b/arch/arm64/kernel/module.c >> index 309a27553c87..af7b4cbace2b 100644 >> --- a/arch/arm64/kernel/module.c >> +++ b/arch/arm64/kernel/module.c >> @@ -36,7 +36,8 @@ void *module_alloc(unsigned long size) >> module_alloc_end =3D MODULES_END; >> >> p =3D __vmalloc_node_range(size, MODULE_ALIGN, module_alloc_base, >> - module_alloc_end, gfp_mask, PAGE_KERNEL, VM_DEFER_KME= MLEAK, >> + module_alloc_end, gfp_mask, PAGE_KERNEL, >> + VM_DEFER_KMEMLEAK | VM_NO_HUGE_VMAP, >> NUMA_NO_NODE, __builtin_return_address(0)); >> >> if (!p && IS_ENABLED(CONFIG_ARM64_MODULE_PLTS) && >> @@ -55,7 +56,7 @@ void *module_alloc(unsigned long size) >> */ >> p =3D __vmalloc_node_range(size, MODULE_ALIGN, module_alloc_ba= se, >> module_alloc_base + SZ_2G, GFP_KERNEL, >> - PAGE_KERNEL, 0, NUMA_NO_NODE, >> + PAGE_KERNEL, VM_NO_HUGE_VMAP, NUMA_NO_NODE, >> __builtin_return_address(0)); >> >> if (p && (kasan_module_alloc(p, size, gfp_mask) < 0)) { >> --=20 >> 2.26.2 >> >>