On Thu, Feb 25, 2021 at 07:29:07PM +0100, David Hildenbrand wrote: > On 09.02.21 14:38, Oscar Salvador wrote: > > Enable x86_64 platform to use the MHP_MEMMAP_ON_MEMORY feature. > > > > Signed-off-by: Oscar Salvador <osalvador@xxxxxxx> > > --- > > arch/x86/Kconfig | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig > > index 72663de8b04c..81046b7adb10 100644 > > --- a/arch/x86/Kconfig > > +++ b/arch/x86/Kconfig > > @@ -2440,6 +2440,10 @@ config ARCH_ENABLE_MEMORY_HOTREMOVE > > def_bool y > > depends on MEMORY_HOTPLUG > > +config ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE > > + def_bool y > > + depends on X86_64 && MEMORY_HOTPLUG && SPARSEMEM_VMEMMAP_ENABLE > > It depends on SPARSEMEM_VMEMMAP, no? > > I think we could have > > SPARSEMEM_VMEMMAP_ENABLE=y > and > SPARSEMEM_VMEMMAP=n > > on manually tuned configs. I do not think this can happen: from mm/Kconfig: config SPARSEMEM_VMEMMAP_ENABLE bool config SPARSEMEM_VMEMMAP bool "Sparse Memory virtual memmap" depends on SPARSEMEM && SPARSEMEM_VMEMMAP_ENABLE default y help SPARSEMEM_VMEMMAP uses a virtually mapped memmap to optimise pfn_to_page and page_to_pfn operations. This is the most efficient option when sufficient kernel resources are available and from arch/x86/Kconfig: config ARCH_SPARSEMEM_ENABLE def_bool y depends on X86_64 || NUMA || X86_32 || X86_32_NON_STANDARD select SPARSEMEM_STATIC if X86_32 select SPARSEMEM_VMEMMAP_ENABLE if X86_64 So, if I read this correctly, for SPARSEMEM_VMEMMAP to be true, SPARSEMEM_VMEMMAP_ENABLE needs to be true as well. Am I missing something? -- Oscar Salvador SUSE L3