mm: memblock: make keeping memblock memory opt-in rather than opt-out

Most architectures do not need the memblock memory after the page
allocator is initialized, but only few enable ARCH_DISCARD_MEMBLOCK in the
arch Kconfig.

Replacing ARCH_DISCARD_MEMBLOCK with ARCH_KEEP_MEMBLOCK and inverting the
logic makes it clear which architectures actually use memblock after
system initialization and skips the necessity to add ARCH_DISCARD_MEMBLOCK
to the architectures that are still missing that option.

Signed-off-by: Mike Rapoport <>
Acked-by: Michael Ellerman <> (powerpc)
Cc: Russell King <>
Cc: Catalin Marinas <>
Cc: Will Deacon <>
Cc: Richard Kuo <>
Cc: Tony Luck <>
Cc: Fenghua Yu <>
Cc: Geert Uytterhoeven <>
Cc: Ralf Baechle <>
Cc: Paul Burton <>
Cc: James Hogan <>
Cc: Ley Foon Tan <>
Cc: Benjamin Herrenschmidt <>
Cc: Paul Mackerras <>
Cc: Martin Schwidefsky <>
Cc: Heiko Carstens <>
Cc: Yoshinori Sato <>
Cc: Rich Felker <>
Cc: Thomas Gleixner <>
Cc: Ingo Molnar <>
Cc: Borislav Petkov <>
Cc: "H. Peter Anvin" <>
Cc: Eric Biederman <>
Signed-off-by: Andrew Morton <>
Signed-off-by: Linus Torvalds <>
16 files changed