mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-08 12:58:12 -04:00
Merge "mm/Kconfig: Enable MEMORY_HOTPLUG for arm64"
This commit is contained in:
commit
1acaa06d58
2 changed files with 34 additions and 1 deletions
|
|
@ -519,7 +519,36 @@ out:
|
|||
}
|
||||
|
||||
static DEVICE_ATTR_WO(probe);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MEMORY_HOTREMOVE
|
||||
static ssize_t remove_store(struct device *dev,
|
||||
struct device_attribute *attr, const char *buf,
|
||||
size_t count)
|
||||
{
|
||||
u64 phys_addr;
|
||||
int nid, ret;
|
||||
unsigned long pages_per_block = PAGES_PER_SECTION * sections_per_block;
|
||||
|
||||
ret = kstrtoull(buf, 0, &phys_addr);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
if (phys_addr & ((pages_per_block << PAGE_SHIFT) - 1))
|
||||
return -EINVAL;
|
||||
|
||||
nid = memory_add_physaddr_to_nid(phys_addr);
|
||||
ret = lock_device_hotplug_sysfs();
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
remove_memory(nid, phys_addr,
|
||||
MIN_MEMORY_BLOCK_SIZE * sections_per_block);
|
||||
unlock_device_hotplug();
|
||||
return count;
|
||||
}
|
||||
static DEVICE_ATTR_WO(remove);
|
||||
#endif /* CONFIG_MEMORY_HOTREMOVE */
|
||||
#endif /* CONFIG_ARCH_MEMORY_PROBE */
|
||||
|
||||
#ifdef CONFIG_MEMORY_FAILURE
|
||||
/*
|
||||
|
|
@ -775,6 +804,9 @@ bool is_memblock_offlined(struct memory_block *mem)
|
|||
static struct attribute *memory_root_attrs[] = {
|
||||
#ifdef CONFIG_ARCH_MEMORY_PROBE
|
||||
&dev_attr_probe.attr,
|
||||
#ifdef CONFIG_MEMORY_HOTREMOVE
|
||||
&dev_attr_remove.attr,
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MEMORY_FAILURE
|
||||
|
|
|
|||
|
|
@ -154,6 +154,7 @@ config MEMORY_HOTPLUG
|
|||
bool "Allow for memory hot-add"
|
||||
depends on SPARSEMEM || X86_64_ACPI_NUMA
|
||||
depends on ARCH_ENABLE_MEMORY_HOTPLUG
|
||||
depends on ARM64
|
||||
|
||||
config MEMORY_HOTPLUG_SPARSE
|
||||
def_bool y
|
||||
|
|
|
|||
Loading…
Reference in a new issue