From patchwork Sat Mar 26 06:46:23 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: mawupeng X-Patchwork-Id: 12792226 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 ABEACC433EF for ; Sat, 26 Mar 2022 06:27:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CC69D6B0071; Sat, 26 Mar 2022 02:27:38 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C76326B0073; Sat, 26 Mar 2022 02:27:38 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B65878D0001; Sat, 26 Mar 2022 02:27:38 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (relay.hostedemail.com [64.99.140.27]) by kanga.kvack.org (Postfix) with ESMTP id A89F66B0071 for ; Sat, 26 Mar 2022 02:27:38 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 7D2E0ECB for ; Sat, 26 Mar 2022 06:27:38 +0000 (UTC) X-FDA: 79285556196.11.323B747 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by imf16.hostedemail.com (Postfix) with ESMTP id 0E04A18002C for ; Sat, 26 Mar 2022 06:27:36 +0000 (UTC) Received: from dggpemm500024.china.huawei.com (unknown [172.30.72.53]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4KQTVY1fcfzfZgr; Sat, 26 Mar 2022 14:25:57 +0800 (CST) Received: from dggpemm500014.china.huawei.com (7.185.36.153) by dggpemm500024.china.huawei.com (7.185.36.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Sat, 26 Mar 2022 14:27:32 +0800 Received: from localhost.localdomain (10.175.112.125) by dggpemm500014.china.huawei.com (7.185.36.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Sat, 26 Mar 2022 14:27:31 +0800 From: Wupeng Ma To: , , , CC: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH 0/9] introduce mirrored memory support for arm64 Date: Sat, 26 Mar 2022 14:46:23 +0800 Message-ID: <20220326064632.131637-1-mawupeng1@huawei.com> X-Mailer: git-send-email 2.18.0.huawei.25 MIME-Version: 1.0 X-Originating-IP: [10.175.112.125] X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To dggpemm500014.china.huawei.com (7.185.36.153) X-CFilter-Loop: Reflected Authentication-Results: imf16.hostedemail.com; dkim=none; dmarc=pass (policy=quarantine) header.from=huawei.com; spf=pass (imf16.hostedemail.com: domain of mawupeng1@huawei.com designates 45.249.212.188 as permitted sender) smtp.mailfrom=mawupeng1@huawei.com X-Stat-Signature: wnz36d4qdj8wg9cpkgbq81hzq54hntdw X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 0E04A18002C X-HE-Tag: 1648276056-708138 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: From: Ma Wupeng Commit b05b9f5f9dcf ("x86, mirror: x86 enabling - find mirrored memory ranges") introduced mirrored memory support for x86. This support rely on UEFI to report mirrored memory address ranges. See UEFI 2.5 spec pages 157-158: http://www.uefi.org/sites/default/files/resources/UEFI%202_5.pdf Arm64 can support this too. So mirrored memory support is added to support arm64. Patch #1-#2 introduce efi_fake_mem support for arm64. Patch #3-#4 introduce mirrored memory support form arm64. Patch #5-#7 fix some bugs for arm64 if memory reliable is enabled. Patch #8 disable mirror feature if kernelcore is not specified. Patch #9 remove some redundant code in ia64 efi_init. Ma Wupeng (9): efi: Make efi_print_memmap() public arm64: efi: Add fake memory support efi: Make efi_find_mirror() public arm64/mirror: arm64 enabling - find mirrored memory ranges mm: Ratelimited mirrored memory related warning messages mm: Demote warning message in vmemmap_verify() to debug level mm: Calc the right pfn if page size is not 4K efi: Disable mirror feature if kernelcore is not specified ia64/efi: Code simplification in efi_init .../admin-guide/kernel-parameters.txt | 4 +- arch/arm64/kernel/setup.c | 3 ++ arch/ia64/kernel/efi.c | 37 +----------------- arch/x86/include/asm/efi.h | 5 --- arch/x86/platform/efi/efi.c | 39 ------------------- drivers/firmware/efi/Kconfig | 2 +- drivers/firmware/efi/efi.c | 26 +++++++++++++ drivers/firmware/efi/memmap.c | 16 ++++++++ include/linux/efi.h | 4 ++ include/linux/mm.h | 2 + mm/memblock.c | 4 +- mm/page_alloc.c | 4 +- mm/sparse-vmemmap.c | 2 +- 13 files changed, 60 insertions(+), 88 deletions(-)