-Phases of memory hotplug
+Further, the basic memory hot(un)plug infrastructure in Linux is nowadays
+also used to expose PMEM, other performance-differentiated
^ persistent memory (PMEM)
Just in case you've missed this one ^ ;-)
"If it fails, an error will be returned by the kernel via the systemcall
that triggered modifying of the respective file."
I also think that write(2) to /sys/devices/system/memory/memoryXXX/online
will fail. But the inner workings of system call, its return value and the
ERRNO are probably not very interesting to a person that did
echo 0 > /sys/devices/system/memory/memoryXXX/online
Maybe something like
If it fails, the state of the memory block will remain unchanged and the
above command will fail.
And maybe an example of how echo reports some unrelated error message :)
+Observing the State of Memory Blocks
...
^ arm64 ?-Now, a boot option for making a memory block which consists of migratable pages
-is supported. By specifying "kernelcore=" or "movablecore=" boot option, you can
-create ZONE_MOVABLE...a zone which is just used for movable pages.
-(See also Documentation/admin-guide/kernel-parameters.rst)
+ For online memory blocks, ``DMA``, ``DMA32``, ``Normal``,
+ ``Movable`` and ``none`` may be returned. ``none`` indicates
Highmem? Or we don't support hotplug on 32 bits?
We only support 64 bit:
config MEMORY_HOTPLUG
...
depends on 64BIT || BROKEN
Worth a comment in the document "Introduction":
"Linux only supports memory hot(un)plug on selected 64 bit architectures,
such as x86_64, aarch64, ppc64, s390x and ia64."