Received: by 2002:a25:e74b:0:0:0:0:0 with SMTP id e72csp394362ybh; Sun, 12 Jul 2020 09:43:55 -0700 (PDT) X-Google-Smtp-Source: ABdhPJz+8LPMjRl5swiz7JXF/ATG6OGlG8UWAghkYu2hoP2AM2wfO55jIIgBRd/o7t3l8DS23kwQ X-Received: by 2002:a17:906:4acc:: with SMTP id u12mr45538763ejt.358.1594572234964; Sun, 12 Jul 2020 09:43:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594572234; cv=none; d=google.com; s=arc-20160816; b=LZvaRY2VnnRIYMj/8+BWpKpN2oD3JUtfuWZNADegpkGvsxoYxe2+XZrJVYWfz3lCVy zPvtj1n3KUqOSRcKzI2yLQ8bEBBnYO3b45GTYgQa6X2zCzlb/H2TKhmoq++IIfFOwGbS CzCfYy1HFczyWVsaRCSgPUoOPp2g7xWQLG4KogwXXAf+oLk1k57Z07Pm5jL15gyi1xoK S8bacwErHWVLupOkjTrA33mBvqsPFgZ1x9Ot0cGviwRWyg4yduqchPSYcV87NZd5LqAb ClbXMBcFvSoxOm/1dzicC/lsSgU/RjvRk/tCv5QZ+2+AKdypnoc45d0/vLRzxfGHQapb CAiw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:cc:to:from :subject:ironport-sdr:ironport-sdr; bh=rDep5uAabM4Ooo4H9vcS8gkb6+y4YzfuQp48LF3p51c=; b=pw+l3Cf1kZa49AWDaarwf/AVd4b+JQ2VyNAOLWpwK2/L/25y03sxK77CB2fzc9g9Q/ 95Ik+FszY0DORX08+dwwSPOprLkaZPqHgqdmpy/R7cq06MCS+hO9FPvfoRCQidahrhc+ xi0TrSvkuW4arnhN6SXsrrbkG37NizOzNXA6z3d+2Law6JsWC2S/LP4EZMTEfHIszQKw diovuDWU7MSXiXqKcK/145HnFqCHF+bVjBJ0OKVrjbzR13EpjQMr+azgLoMzsFU5JleQ 2oyBIQLVhAyu/QJ90ZiGuidDp2V+mtf5ymkTjUThMmckYIhwk/UO8c+9ErnShEQeiA3O wmaQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id a42si9139312edf.300.2020.07.12.09.43.31; Sun, 12 Jul 2020 09:43:54 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729197AbgGLQm7 (ORCPT + 99 others); Sun, 12 Jul 2020 12:42:59 -0400 Received: from mga03.intel.com ([134.134.136.65]:8207 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729180AbgGLQmz (ORCPT ); Sun, 12 Jul 2020 12:42:55 -0400 IronPort-SDR: y2Td2U52xkrxERanYeAknI3tpX8Gc/Dfcum8DECz5OhjAlPUlt9HkU2QqnGTRvp57n9xR1h/md NpJavus13m0g== X-IronPort-AV: E=McAfee;i="6000,8403,9680"; a="148511448" X-IronPort-AV: E=Sophos;i="5.75,344,1589266800"; d="scan'208";a="148511448" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jul 2020 09:42:54 -0700 IronPort-SDR: dHWrCRJ+HxfA5mS5m5a07vIUByQdHXhRhyHku++9gHnv8GIa0fupPpqzL860YfYMPw+fVAcKlc zgjvtM21YP5Q== X-IronPort-AV: E=Sophos;i="5.75,344,1589266800"; d="scan'208";a="429128322" Received: from dwillia2-desk3.jf.intel.com (HELO dwillia2-desk3.amr.corp.intel.com) ([10.54.39.16]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jul 2020 09:42:54 -0700 Subject: [PATCH v2 06/22] x86: Move NUMA_KEEP_MEMINFO and related definition to x86-internals From: Dan Williams To: linux-nvdimm@lists.01.org Cc: Thomas Gleixner , Ingo Molnar , Borislav Petkov , x86@kernel.org, "H. Peter Anvin" , Dave Hansen , Andy Lutomirski , Peter Zijlstra , Andrew Morton , vishal.l.verma@intel.com, ard.biesheuvel@linaro.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org, hch@lst.de, joao.m.martins@oracle.com Date: Sun, 12 Jul 2020 09:26:38 -0700 Message-ID: <159457119816.754248.17444705191598115716.stgit@dwillia2-desk3.amr.corp.intel.com> In-Reply-To: <159457116473.754248.7879464730875147365.stgit@dwillia2-desk3.amr.corp.intel.com> References: <159457116473.754248.7879464730875147365.stgit@dwillia2-desk3.amr.corp.intel.com> User-Agent: StGit/0.18-3-g996c MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org x86 is the lone architecture that uses numa_meminfo. Move and rename NUMA_KEEP_MEMINFO from the core mm/Kconfig to X86_NUMA_KEEP_MEMINFO in arch/x86/mm/Kconfig. This is in preparation for defining a generic memblock based implementation of memory_add_physaddr_to_nid() and phys_to_target_node(). Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Borislav Petkov Cc: x86@kernel.org Cc: "H. Peter Anvin" Cc: Dave Hansen Cc: Andy Lutomirski Cc: Peter Zijlstra Cc: Andrew Morton Signed-off-by: Dan Williams --- arch/x86/Kconfig | 7 ++++++- arch/x86/mm/numa.c | 2 +- arch/x86/mm/numa_internal.h | 7 +++++++ include/linux/numa.h | 7 ------- mm/Kconfig | 5 ----- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 6a0cc524882d..fc9264ea4041 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -1560,6 +1560,11 @@ config NUMA Otherwise, you should say N. +# Keep NUMA mapping infrastructure post-init. +config X86_NUMA_KEEP_MEMINFO + def_bool MEMORY_HOTPLUG + depends on NUMA + config AMD_NUMA def_bool y prompt "Old style AMD Opteron NUMA detection" @@ -1640,7 +1645,7 @@ config X86_PMEM_LEGACY depends on PHYS_ADDR_T_64BIT depends on BLK_DEV select X86_PMEM_LEGACY_DEVICE - select NUMA_KEEP_MEMINFO if NUMA + select X86_NUMA_KEEP_MEMINFO if NUMA select LIBNVDIMM help Treat memory marked using the non-standard e820 type of 12 as used diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c index 44fdf06d497e..311d22cf8ac2 100644 --- a/arch/x86/mm/numa.c +++ b/arch/x86/mm/numa.c @@ -893,7 +893,7 @@ EXPORT_SYMBOL(cpumask_of_node); #endif /* !CONFIG_DEBUG_PER_CPU_MAPS */ -#ifdef CONFIG_NUMA_KEEP_MEMINFO +#ifdef CONFIG_X86_NUMA_KEEP_MEMINFO static int meminfo_to_nid(struct numa_meminfo *mi, u64 start) { int i; diff --git a/arch/x86/mm/numa_internal.h b/arch/x86/mm/numa_internal.h index 86860f279662..7b843414335f 100644 --- a/arch/x86/mm/numa_internal.h +++ b/arch/x86/mm/numa_internal.h @@ -11,6 +11,13 @@ struct numa_memblk { int nid; }; +/* optionally keep NUMA memory info available post init */ +#ifdef CONFIG_X86_NUMA_KEEP_MEMINFO +#define __initdata_or_meminfo +#else +#define __initdata_or_meminfo __initdata +#endif + struct numa_meminfo { int nr_blks; struct numa_memblk blk[NR_NODE_MEMBLKS]; diff --git a/include/linux/numa.h b/include/linux/numa.h index a42df804679e..5d25c5de1322 100644 --- a/include/linux/numa.h +++ b/include/linux/numa.h @@ -13,13 +13,6 @@ #define NUMA_NO_NODE (-1) -/* optionally keep NUMA memory info available post init */ -#ifdef CONFIG_NUMA_KEEP_MEMINFO -#define __initdata_or_meminfo -#else -#define __initdata_or_meminfo __initdata -#endif - #ifdef CONFIG_NUMA /* Generic implementation available */ int numa_map_to_online_node(int node); diff --git a/mm/Kconfig b/mm/Kconfig index f2104cc0d35c..0051f735ad98 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -139,10 +139,6 @@ config HAVE_FAST_GUP config ARCH_KEEP_MEMBLOCK bool -# Keep arch NUMA mapping infrastructure post-init. -config NUMA_KEEP_MEMINFO - bool - config MEMORY_ISOLATION bool @@ -159,7 +155,6 @@ config MEMORY_HOTPLUG depends on SPARSEMEM || X86_64_ACPI_NUMA depends on ARCH_ENABLE_MEMORY_HOTPLUG depends on 64BIT || BROKEN - select NUMA_KEEP_MEMINFO if NUMA config MEMORY_HOTPLUG_SPARSE def_bool y