On 17.12.19 13:38, David Hildenbrand wrote: > This RFC is based on linux-next and > - 2 patches from "PATCH RFC v4 00/13] virtio-mem: paravirtualized memory" > -> "mm: Allow to offline unmovable PageOffline() pages via > MEM_GOING_OFFLINE" [1] > -> "mm/memory_hotplug: Introduce offline_and_remove_memory()" [2] > - "mm/memory_hotplug: Don't free usage map when removing a re-added early > section" [3] > > A branch with all patches (kept updated) is available at: > https://github.com/davidhildenbrand/linux.git memtrace > > Stop using offline_pages() to offline memory blocks. Allocate the memory > blocks using alloc_contig_pages() first and offline+remove the allcoated > memory blocks using a clean MM interface. Offlining of allocated memory is > made possible by using PageOffline() in combination with a memory notifier > (similar to virto-mem). > > Note: In the future, we might want to switch to only removing/readding the > page tables of the allocated memory (while still marking it PageOffline()). > However, that might have other implications, and requires work from PPC > people (IOW, I won't fiddle with that :) ). > > [1] https://lkml.kernel.org/r/20191212171137.13872-8-david@xxxxxxxxxx > [2] https://lkml.kernel.org/r/20191212171137.13872-10-david@xxxxxxxxxx > [3] https://lkml.kernel.org/r/20191217104637.5509-1-david@xxxxxxxxxx > > > David Hildenbrand (3): > powerpc/memtrace: Enforce power of 2 for memory buffer size > powerpc/memtrace: Factor out readding memory into memtrace_free_node() > powerpc/memtrace: Don't offline memory blocks via offline_pages() > > arch/powerpc/platforms/powernv/Kconfig | 1 + > arch/powerpc/platforms/powernv/memtrace.c | 217 ++++++++++++++-------- > 2 files changed, 136 insertions(+), 82 deletions(-) > (CC linuxppc-dev on the cover letter, my fancy sendmail cc-cmd.sh script missed it, sorry) -- Thanks, David / dhildenb