diff options
author | Toshi Kani <toshi.kani@hp.com> | 2013-07-19 13:47:48 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-07-22 05:13:34 -0400 |
commit | a0842b704b0f7c2d925473676f2012ea5dc39976 (patch) | |
tree | 6abaf5122cd924cbe083b168ea3e94264b6d6b73 | |
parent | 3b2f64d00c46e1e4e9bd0bb9bb12619adac27a4b (diff) |
mm/hotplug, x86: Disable ARCH_MEMORY_PROBE by default
CONFIG_ARCH_MEMORY_PROBE enables the
/sys/devices/system/memory/probe interface, which allows a given
memory address to be hot-added as follows:
# echo start_address_of_new_memory > /sys/devices/system/memory/probe
(See Documentation/memory-hotplug.txt for more details.)
This probe interface is required on powerpc. On x86, however,
ACPI notifies a memory hotplug event to the kernel, which
performs its hotplug operation as the result.
Therefore, regular users do not need this interface on x86. This probe
interface is also error-prone and misleading that the kernel blindly
adds a given memory address without checking if the memory is present
on the system; no probing is done despite of its name.
The kernel crashes when a user requests to online a memory block
that is not present on the system. This interface is currently
used for testing as it can fake a hotplug event.
This patch disables CONFIG_ARCH_MEMORY_PROBE by default on x86,
adds its Kconfig menu entry on x86, and clarifies its use in
Documentation/ memory-hotplug.txt.
Signed-off-by: Toshi Kani <toshi.kani@hp.com>
Acked-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: linux-mm@kvack.org
Cc: dave@sr71.net
Cc: isimatu.yasuaki@jp.fujitsu.com
Cc: tangchen@cn.fujitsu.com
Cc: vasilis.liaskovitis@profitbricks.com
Link: http://lkml.kernel.org/r/1374256068-26016-1-git-send-email-toshi.kani@hp.com
[ Edited it slightly. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r-- | Documentation/memory-hotplug.txt | 16 | ||||
-rw-r--r-- | arch/x86/Kconfig | 6 |
2 files changed, 14 insertions, 8 deletions
diff --git a/Documentation/memory-hotplug.txt b/Documentation/memory-hotplug.txt index 8e5eacbdcfa3..8fd254c73589 100644 --- a/Documentation/memory-hotplug.txt +++ b/Documentation/memory-hotplug.txt | |||
@@ -210,13 +210,15 @@ If memory device is found, memory hotplug code will be called. | |||
210 | 210 | ||
211 | 4.2 Notify memory hot-add event by hand | 211 | 4.2 Notify memory hot-add event by hand |
212 | ------------ | 212 | ------------ |
213 | In some environments, especially virtualized environment, firmware will not | 213 | On powerpc, the firmware does not notify a memory hotplug event to the kernel. |
214 | notify memory hotplug event to the kernel. For such environment, "probe" | 214 | Therefore, "probe" interface is supported to notify the event to the kernel. |
215 | interface is supported. This interface depends on CONFIG_ARCH_MEMORY_PROBE. | 215 | This interface depends on CONFIG_ARCH_MEMORY_PROBE. |
216 | 216 | ||
217 | Now, CONFIG_ARCH_MEMORY_PROBE is supported only by powerpc but it does not | 217 | CONFIG_ARCH_MEMORY_PROBE is supported on powerpc only. On x86, this config |
218 | contain highly architecture codes. Please add config if you need "probe" | 218 | option is disabled by default since ACPI notifies a memory hotplug event to |
219 | interface. | 219 | the kernel, which performs its hotplug operation as the result. Please |
220 | enable this option if you need the "probe" interface for testing purposes | ||
221 | on x86. | ||
220 | 222 | ||
221 | Probe interface is located at | 223 | Probe interface is located at |
222 | /sys/devices/system/memory/probe | 224 | /sys/devices/system/memory/probe |
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index b32ebf92b0ce..2f9d95775d27 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -1344,8 +1344,12 @@ config ARCH_SELECT_MEMORY_MODEL | |||
1344 | depends on ARCH_SPARSEMEM_ENABLE | 1344 | depends on ARCH_SPARSEMEM_ENABLE |
1345 | 1345 | ||
1346 | config ARCH_MEMORY_PROBE | 1346 | config ARCH_MEMORY_PROBE |
1347 | def_bool y | 1347 | bool "Enable sysfs memory/probe interface" |
1348 | depends on X86_64 && MEMORY_HOTPLUG | 1348 | depends on X86_64 && MEMORY_HOTPLUG |
1349 | help | ||
1350 | This option enables a sysfs memory/probe interface for testing. | ||
1351 | See Documentation/memory-hotplug.txt for more information. | ||
1352 | If you are unsure how to answer this question, answer N. | ||
1349 | 1353 | ||
1350 | config ARCH_PROC_KCORE_TEXT | 1354 | config ARCH_PROC_KCORE_TEXT |
1351 | def_bool y | 1355 | def_bool y |