[PATCH v1 0/4] powernv/memtrace: don't abuse memory hot(un)plug infrastructure for memory allocations

From: David Hildenbrand
Date: Thu Oct 29 2020 - 12:27:36 EST


powernv/memtrace is the only in-kernel user that rips out random memory
it never added (doesn't own) in order to allocate memory without a
linear mapping. Let's stop abusing memory hot(un)plug infrastructure for
that - use alloc_contig_pages() for allocating memory and remove the
linear mapping manually.

The original idea was discussed in:
https://lkml.kernel.org/r/48340e96-7e6b-736f-9e23-d3111b915b6e@xxxxxxxxxx

I only tested allocations briefly via QEMU TCG - see patch #4 for more
details.

David Hildenbrand (4):
powerpc/mm: factor out creating/removing linear mapping
powerpc/mm: print warning in arch_remove_linear_mapping()
powerpc/mm: remove linear mapping if __add_pages() fails in
arch_add_memory()
powernv/memtrace: don't abuse memory hot(un)plug infrastructure for
memory allocations

arch/powerpc/mm/mem.c | 48 +++++---
arch/powerpc/platforms/powernv/Kconfig | 8 +-
arch/powerpc/platforms/powernv/memtrace.c | 134 ++++++++--------------
include/linux/memory_hotplug.h | 3 +
4 files changed, 86 insertions(+), 107 deletions(-)

--
2.26.2