Commit 5c11f00b authored by David Hildenbrand's avatar David Hildenbrand Committed by Linus Torvalds

x86: remove memory hotplug support on X86_32

CONFIG_MEMORY_HOTPLUG was marked BROKEN over one year and we just
restricted it to 64 bit.  Let's remove the unused x86 32bit
implementation and simplify the Kconfig.

Link: https://lkml.kernel.org/r/20210929143600.49379-7-david@redhat.comSigned-off-by: default avatarDavid Hildenbrand <david@redhat.com>
Reviewed-by: default avatarOscar Salvador <osalvador@suse.de>
Cc: Alex Shi <alexs@kernel.org>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Dave Hansen <dave.hansen@linux.intel.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 43e3aa2a
...@@ -62,7 +62,7 @@ config X86 ...@@ -62,7 +62,7 @@ config X86
select ARCH_32BIT_OFF_T if X86_32 select ARCH_32BIT_OFF_T if X86_32
select ARCH_CLOCKSOURCE_INIT select ARCH_CLOCKSOURCE_INIT
select ARCH_ENABLE_HUGEPAGE_MIGRATION if X86_64 && HUGETLB_PAGE && MIGRATION select ARCH_ENABLE_HUGEPAGE_MIGRATION if X86_64 && HUGETLB_PAGE && MIGRATION
select ARCH_ENABLE_MEMORY_HOTPLUG if X86_64 || (X86_32 && HIGHMEM) select ARCH_ENABLE_MEMORY_HOTPLUG if X86_64
select ARCH_ENABLE_MEMORY_HOTREMOVE if MEMORY_HOTPLUG select ARCH_ENABLE_MEMORY_HOTREMOVE if MEMORY_HOTPLUG
select ARCH_ENABLE_SPLIT_PMD_PTLOCK if (PGTABLE_LEVELS > 2) && (X86_64 || X86_PAE) select ARCH_ENABLE_SPLIT_PMD_PTLOCK if (PGTABLE_LEVELS > 2) && (X86_64 || X86_PAE)
select ARCH_ENABLE_THP_MIGRATION if X86_64 && TRANSPARENT_HUGEPAGE select ARCH_ENABLE_THP_MIGRATION if X86_64 && TRANSPARENT_HUGEPAGE
...@@ -1614,7 +1614,7 @@ config ARCH_SELECT_MEMORY_MODEL ...@@ -1614,7 +1614,7 @@ config ARCH_SELECT_MEMORY_MODEL
config ARCH_MEMORY_PROBE config ARCH_MEMORY_PROBE
bool "Enable sysfs memory/probe interface" bool "Enable sysfs memory/probe interface"
depends on X86_64 && MEMORY_HOTPLUG depends on MEMORY_HOTPLUG
help help
This option enables a sysfs memory/probe interface for testing. This option enables a sysfs memory/probe interface for testing.
See Documentation/admin-guide/mm/memory-hotplug.rst for more information. See Documentation/admin-guide/mm/memory-hotplug.rst for more information.
...@@ -2394,7 +2394,7 @@ endmenu ...@@ -2394,7 +2394,7 @@ endmenu
config ARCH_HAS_ADD_PAGES config ARCH_HAS_ADD_PAGES
def_bool y def_bool y
depends on X86_64 && ARCH_ENABLE_MEMORY_HOTPLUG depends on ARCH_ENABLE_MEMORY_HOTPLUG
config ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE config ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE
def_bool y def_bool y
......
...@@ -779,37 +779,6 @@ void __init mem_init(void) ...@@ -779,37 +779,6 @@ void __init mem_init(void)
test_wp_bit(); test_wp_bit();
} }
#ifdef CONFIG_MEMORY_HOTPLUG
int arch_add_memory(int nid, u64 start, u64 size,
struct mhp_params *params)
{
unsigned long start_pfn = start >> PAGE_SHIFT;
unsigned long nr_pages = size >> PAGE_SHIFT;
int ret;
/*
* The page tables were already mapped at boot so if the caller
* requests a different mapping type then we must change all the
* pages with __set_memory_prot().
*/
if (params->pgprot.pgprot != PAGE_KERNEL.pgprot) {
ret = __set_memory_prot(start, nr_pages, params->pgprot);
if (ret)
return ret;
}
return __add_pages(nid, start_pfn, nr_pages, params);
}
void arch_remove_memory(u64 start, u64 size, struct vmem_altmap *altmap)
{
unsigned long start_pfn = start >> PAGE_SHIFT;
unsigned long nr_pages = size >> PAGE_SHIFT;
__remove_pages(start_pfn, nr_pages, altmap);
}
#endif
int kernel_set_to_readonly __read_mostly; int kernel_set_to_readonly __read_mostly;
static void mark_nxdata_nx(void) static void mark_nxdata_nx(void)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment