Re: [PATCH RFC v1 0/3] powerpc/memtrace: Don't offline memory blocks via offline_pages()

From: David Hildenbrand
Date: Tue Dec 17 2019 - 07:42:41 EST


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