Commit a71ac6c9 authored by Oscar Salvador's avatar Oscar Salvador Committed by John Paul Adrian Glaubitz
Browse files

sh: Drop support for memory hotplug and memory hotremove



Support for memory hotplug was restricted to 64-bit platforms in
7ec58a2b ("mm/memory_hotplug: restrict CONFIG_MEMORY_HOTPLUG
to 64 bit") while sh is a pure 32-bit platform since the removal
of sh5 support. Thus, drop support for memory hotplug and the
associated memory hotremove on this platform.

Signed-off-by: default avatarOscar Salvador <osalvador@suse.de>
Reviewed-by: default avatarJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Link: https://lore.kernel.org/r/20240518115808.8888-2-osalvador@suse.de


Signed-off-by: default avatarJohn Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
parent 1613e604
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -3,8 +3,6 @@ config SUPERH
	def_bool y
	select ARCH_32BIT_OFF_T
	select ARCH_HAS_CPU_CACHE_ALIASING
	select ARCH_ENABLE_MEMORY_HOTPLUG if SPARSEMEM && MMU
	select ARCH_ENABLE_MEMORY_HOTREMOVE if SPARSEMEM && MMU
	select ARCH_HAVE_NMI_SAFE_CMPXCHG if (GUSA_RB || CPU_SH4A)
	select ARCH_HAS_BINFMT_FLAT if !MMU
	select ARCH_HAS_CPU_FINALIZE_INIT
+0 −4
Original line number Diff line number Diff line
@@ -144,10 +144,6 @@ config ARCH_SPARSEMEM_DEFAULT
config ARCH_SELECT_MEMORY_MODEL
	def_bool y

config ARCH_MEMORY_PROBE
	def_bool y
	depends on MEMORY_HOTPLUG

config IOREMAP_FIXED
       def_bool y
       depends on X2TLB
+0 −28
Original line number Diff line number Diff line
@@ -395,31 +395,3 @@ void __init mem_init(void)

	mem_init_done = 1;
}

#ifdef CONFIG_MEMORY_HOTPLUG
int arch_add_memory(int nid, u64 start, u64 size,
		    struct mhp_params *params)
{
	unsigned long start_pfn = PFN_DOWN(start);
	unsigned long nr_pages = size >> PAGE_SHIFT;
	int ret;

	if (WARN_ON_ONCE(params->pgprot.pgprot != PAGE_KERNEL.pgprot))
		return -EINVAL;

	/* We only have ZONE_NORMAL, so this is easy.. */
	ret = __add_pages(nid, start_pfn, nr_pages, params);
	if (unlikely(ret))
		printk("%s: Failed, __add_pages() == %d\n", __func__, ret);

	return ret;
}

void arch_remove_memory(u64 start, u64 size, struct vmem_altmap *altmap)
{
	unsigned long start_pfn = PFN_DOWN(start);
	unsigned long nr_pages = size >> PAGE_SHIFT;

	__remove_pages(start_pfn, nr_pages, altmap);
}
#endif /* CONFIG_MEMORY_HOTPLUG */