From: Dan Williams <dan.j.williams@intel.com> To: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com> Cc: David Hildenbrand <david@redhat.com>, Borislav Petkov <bp@alien8.de>, "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>, "H. Peter Anvin" <hpa@zytor.com>, "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>, kbuild test robot <lkp@intel.com>, Andrew Morton <akpm@linux-foundation.org>, Peter Zijlstra <peterz@infradead.org>, Benjamin Herrenschmidt <benh@kernel.crashing.org>, Michal Hocko <mhocko@suse.com>, Paul Mackerras <paulus@samba.org>, Christoph Hellwig <hch@lst.de>, Dave Hansen <dave.hansen@linux.intel.com>, Michael Ellerman <mpe@ellerman.id.au>, X86 ML <x86@kernel.org>, Andy Lutomirski <luto@kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, linux-nvdimm <linux-nvdimm@lists.01.org> Subject: Re: [PATCH v4 0/6] Memory Hierarchy: Enable target node lookups for reserved memory Date: Wed, 12 Feb 2020 18:28:12 -0800 [thread overview] Message-ID: <CAPcyv4j8ouOpaAEXELzKdr1m6cPWw=XOeRg4FqXPAgV3ZqUJoA@mail.gmail.com> (raw) In-Reply-To: <157966227494.2508551.7206194169374588977.stgit@dwillia2-desk3.amr.corp.intel.com> On Tue, Jan 21, 2020 at 7:20 PM Dan Williams <dan.j.williams@intel.com> wrote: > > Changes since v3 [1]: > - Cleanup numa_map_to_online_node() to remove redundant "if > (!node_online(node))" (Aneesh) > > [1]: http://lore.kernel.org/r/157954696789.2239526.17707265517154476652.stgit@dwillia2-desk3.amr.corp.intel.com > > --- > > Merge notes: > > x86 folks: This has an ack from Rafael for ACPI, and Michael for Power. > With an x86 ack I plan to take this through the libnvdimm tree provided > the x86 touches look ok to you. Ping x86 folks. There's no additional changes identified for this series. Can I request an ack to take it through libnvdimm.git? Do you need a resend? x86/mm: Introduce CONFIG_KEEP_NUMA x86/numa: Provide a range-to-target_node lookup facility > > --- > > Cover: > > Arrange for platform numa info to be preserved for determining > 'target_node' data. Where a 'target_node' is the node a reserved memory > range will become when it is onlined. > > This new infrastructure is expected to be more valuable over time for > Memory Tiers / Hierarchy management as more platforms (via the ACPI HMAT > and EFI Specific Purpose Memory) publish reserved or "soft-reserved" > ranges to Linux. Linux system administrators will expect to be able to > interact with those ranges with a unique numa node number when/if that > memory is onlined via the dax_kmem driver [2]. > > One configuration that currently fails to properly convey the target > node for the resulting memory hotplug operation is persistent memory > defined by the memmap=nn!ss parameter. For example, today if node1 is a > memory only node, and all the memory from node1 is specified to > memmap=nn!ss and subsequently onlined, it will end up being onlined as > node0 memory. As it stands, memory_add_physaddr_to_nid() can only > identify online nodes and since node1 in this example has no online cpus > / memory the target node is initialized node0. > > The fix is to preserve rather than discard the numa_meminfo entries that > are relevant for reserved memory ranges, and to uplevel the node > distance helper for determining the "local" (closest) node relative to > an initiator node. > > [2]: https://pmem.io/ndctl/daxctl-reconfigure-device.html > > --- > > Dan Williams (6): > ACPI: NUMA: Up-level "map to online node" functionality > mm/numa: Skip NUMA_NO_NODE and online nodes in numa_map_to_online_node() > powerpc/papr_scm: Switch to numa_map_to_online_node() > x86/mm: Introduce CONFIG_KEEP_NUMA > x86/numa: Provide a range-to-target_node lookup facility > libnvdimm/e820: Retrieve and populate correct 'target_node' info > > > arch/powerpc/platforms/pseries/papr_scm.c | 21 -------- > arch/x86/Kconfig | 1 > arch/x86/mm/numa.c | 74 +++++++++++++++++++++++------ > drivers/acpi/numa/srat.c | 41 ---------------- > drivers/nvdimm/e820.c | 18 ++----- > include/linux/acpi.h | 23 +++++++++ > include/linux/numa.h | 23 +++++++++ > mm/Kconfig | 5 ++ > mm/mempolicy.c | 31 ++++++++++++ > 9 files changed, 145 insertions(+), 92 deletions(-) _______________________________________________ Linux-nvdimm mailing list -- linux-nvdimm@lists.01.org To unsubscribe send an email to linux-nvdimm-leave@lists.01.org
WARNING: multiple messages have this Message-ID (diff)
From: Dan Williams <dan.j.williams@intel.com> To: Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com> Cc: David Hildenbrand <david@redhat.com>, Ira Weiny <ira.weiny@intel.com>, Borislav Petkov <bp@alien8.de>, Vishal Verma <vishal.l.verma@intel.com>, "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>, "H. Peter Anvin" <hpa@zytor.com>, "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>, kbuild test robot <lkp@intel.com>, Andrew Morton <akpm@linux-foundation.org>, Peter Zijlstra <peterz@infradead.org>, Benjamin Herrenschmidt <benh@kernel.crashing.org>, Michal Hocko <mhocko@suse.com>, Paul Mackerras <paulus@samba.org>, Christoph Hellwig <hch@lst.de>, Dave Hansen <dave.hansen@linux.intel.com>, Michael Ellerman <mpe@ellerman.id.au>, X86 ML <x86@kernel.org>, "Oliver O'Halloran" <oohall@gmail.com>, Andy Lutomirski <luto@kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, linux-nvdimm <linux-nvdimm@lists.01.org> Subject: Re: [PATCH v4 0/6] Memory Hierarchy: Enable target node lookups for reserved memory Date: Wed, 12 Feb 2020 18:28:12 -0800 [thread overview] Message-ID: <CAPcyv4j8ouOpaAEXELzKdr1m6cPWw=XOeRg4FqXPAgV3ZqUJoA@mail.gmail.com> (raw) In-Reply-To: <157966227494.2508551.7206194169374588977.stgit@dwillia2-desk3.amr.corp.intel.com> On Tue, Jan 21, 2020 at 7:20 PM Dan Williams <dan.j.williams@intel.com> wrote: > > Changes since v3 [1]: > - Cleanup numa_map_to_online_node() to remove redundant "if > (!node_online(node))" (Aneesh) > > [1]: http://lore.kernel.org/r/157954696789.2239526.17707265517154476652.stgit@dwillia2-desk3.amr.corp.intel.com > > --- > > Merge notes: > > x86 folks: This has an ack from Rafael for ACPI, and Michael for Power. > With an x86 ack I plan to take this through the libnvdimm tree provided > the x86 touches look ok to you. Ping x86 folks. There's no additional changes identified for this series. Can I request an ack to take it through libnvdimm.git? Do you need a resend? x86/mm: Introduce CONFIG_KEEP_NUMA x86/numa: Provide a range-to-target_node lookup facility > > --- > > Cover: > > Arrange for platform numa info to be preserved for determining > 'target_node' data. Where a 'target_node' is the node a reserved memory > range will become when it is onlined. > > This new infrastructure is expected to be more valuable over time for > Memory Tiers / Hierarchy management as more platforms (via the ACPI HMAT > and EFI Specific Purpose Memory) publish reserved or "soft-reserved" > ranges to Linux. Linux system administrators will expect to be able to > interact with those ranges with a unique numa node number when/if that > memory is onlined via the dax_kmem driver [2]. > > One configuration that currently fails to properly convey the target > node for the resulting memory hotplug operation is persistent memory > defined by the memmap=nn!ss parameter. For example, today if node1 is a > memory only node, and all the memory from node1 is specified to > memmap=nn!ss and subsequently onlined, it will end up being onlined as > node0 memory. As it stands, memory_add_physaddr_to_nid() can only > identify online nodes and since node1 in this example has no online cpus > / memory the target node is initialized node0. > > The fix is to preserve rather than discard the numa_meminfo entries that > are relevant for reserved memory ranges, and to uplevel the node > distance helper for determining the "local" (closest) node relative to > an initiator node. > > [2]: https://pmem.io/ndctl/daxctl-reconfigure-device.html > > --- > > Dan Williams (6): > ACPI: NUMA: Up-level "map to online node" functionality > mm/numa: Skip NUMA_NO_NODE and online nodes in numa_map_to_online_node() > powerpc/papr_scm: Switch to numa_map_to_online_node() > x86/mm: Introduce CONFIG_KEEP_NUMA > x86/numa: Provide a range-to-target_node lookup facility > libnvdimm/e820: Retrieve and populate correct 'target_node' info > > > arch/powerpc/platforms/pseries/papr_scm.c | 21 -------- > arch/x86/Kconfig | 1 > arch/x86/mm/numa.c | 74 +++++++++++++++++++++++------ > drivers/acpi/numa/srat.c | 41 ---------------- > drivers/nvdimm/e820.c | 18 ++----- > include/linux/acpi.h | 23 +++++++++ > include/linux/numa.h | 23 +++++++++ > mm/Kconfig | 5 ++ > mm/mempolicy.c | 31 ++++++++++++ > 9 files changed, 145 insertions(+), 92 deletions(-)
next prev parent reply other threads:[~2020-02-13 2:28 UTC|newest] Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-01-22 3:04 [PATCH v4 0/6] Memory Hierarchy: Enable target node lookups for reserved memory Dan Williams 2020-01-22 3:04 ` Dan Williams 2020-01-22 3:04 ` [PATCH v4 1/6] ACPI: NUMA: Up-level "map to online node" functionality Dan Williams 2020-01-22 3:04 ` Dan Williams 2020-01-22 3:04 ` [PATCH v4 2/6] mm/numa: Skip NUMA_NO_NODE and online nodes in numa_map_to_online_node() Dan Williams 2020-01-22 3:04 ` Dan Williams 2020-01-22 3:04 ` [PATCH v4 3/6] powerpc/papr_scm: Switch to numa_map_to_online_node() Dan Williams 2020-01-22 3:04 ` Dan Williams 2020-01-22 3:04 ` [PATCH v4 4/6] x86/mm: Introduce CONFIG_KEEP_NUMA Dan Williams 2020-01-22 3:04 ` Dan Williams 2020-02-13 9:32 ` Ingo Molnar 2020-02-13 9:32 ` Ingo Molnar 2020-02-13 21:19 ` Dan Williams 2020-02-13 21:19 ` Dan Williams 2020-02-13 11:22 ` Thomas Gleixner 2020-02-13 11:22 ` Thomas Gleixner 2020-02-13 21:21 ` Dan Williams 2020-02-13 21:21 ` Dan Williams 2020-01-22 3:05 ` [PATCH v4 5/6] x86/numa: Provide a range-to-target_node lookup facility Dan Williams 2020-01-22 3:05 ` Dan Williams 2020-02-13 9:36 ` Ingo Molnar 2020-02-13 9:36 ` Ingo Molnar 2020-02-13 11:37 ` Thomas Gleixner 2020-02-13 11:37 ` Thomas Gleixner 2020-02-13 21:40 ` Dan Williams 2020-02-13 21:40 ` Dan Williams 2020-01-22 3:05 ` [PATCH v4 6/6] libnvdimm/e820: Retrieve and populate correct 'target_node' info Dan Williams 2020-01-22 3:05 ` Dan Williams 2020-02-13 2:28 ` Dan Williams [this message] 2020-02-13 2:28 ` [PATCH v4 0/6] Memory Hierarchy: Enable target node lookups for reserved memory Dan Williams 2020-02-13 9:37 ` Ingo Molnar 2020-02-13 9:37 ` Ingo Molnar 2020-02-16 20:00 ` [PATCH v5 " Dan Williams 2020-02-16 20:00 ` Dan Williams 2020-02-16 20:00 ` [PATCH v5 1/6] ACPI: NUMA: Up-level "map to online node" functionality Dan Williams 2020-02-16 20:00 ` Dan Williams 2020-02-16 20:00 ` [PATCH v5 2/6] mm/numa: Skip NUMA_NO_NODE and online nodes in numa_map_to_online_node() Dan Williams 2020-02-16 20:00 ` Dan Williams 2020-02-16 20:00 ` [PATCH v5 3/6] powerpc/papr_scm: Switch to numa_map_to_online_node() Dan Williams 2020-02-16 20:00 ` Dan Williams 2020-02-16 20:01 ` [PATCH v5 4/6] x86/mm: Introduce CONFIG_NUMA_KEEP_MEMINFO Dan Williams 2020-02-16 20:01 ` Dan Williams 2020-02-17 8:21 ` Thomas Gleixner 2020-02-17 8:21 ` Thomas Gleixner 2020-02-16 20:01 ` [PATCH v5 5/6] x86/NUMA: Provide a range-to-target_node lookup facility Dan Williams 2020-02-16 20:01 ` Dan Williams 2020-02-17 8:22 ` Thomas Gleixner 2020-02-17 8:22 ` Thomas Gleixner 2020-02-16 20:01 ` [PATCH v5 6/6] libnvdimm/e820: Retrieve and populate correct 'target_node' info Dan Williams 2020-02-16 20:01 ` Dan Williams
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='CAPcyv4j8ouOpaAEXELzKdr1m6cPWw=XOeRg4FqXPAgV3ZqUJoA@mail.gmail.com' \ --to=dan.j.williams@intel.com \ --cc=akpm@linux-foundation.org \ --cc=aneesh.kumar@linux.ibm.com \ --cc=benh@kernel.crashing.org \ --cc=bp@alien8.de \ --cc=dave.hansen@linux.intel.com \ --cc=david@redhat.com \ --cc=hch@lst.de \ --cc=hpa@zytor.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-nvdimm@lists.01.org \ --cc=lkp@intel.com \ --cc=luto@kernel.org \ --cc=mhocko@suse.com \ --cc=mingo@redhat.com \ --cc=mpe@ellerman.id.au \ --cc=paulus@samba.org \ --cc=peterz@infradead.org \ --cc=rafael.j.wysocki@intel.com \ --cc=tglx@linutronix.de \ --cc=x86@kernel.org \ /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: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.