Skip to content

RFC Mirrored memory support for boot time allocations

Tony Luck linux-mm lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest3 patches 6 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3mm/memblock: Add extra "flag" to memblock to allow selection of memory based on attributearch/s390/kernel/crash_dump.c arch/sparc/mm/init_64.c arch/x86/kernel/check.c +7 more+61 -470 replies
2/3mm/memblock: Allocate boot time data structures from mirrored memoryinclude/linux/memblock.h mm/memblock.c mm/nobootmem.c+79 -110 replies
3/3x86, mirror: x86 enabling - find mirrored memory ranges and tell memblock+0 -02 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [RFC 0/3] Mirrored memory support for boot time allocations

Platforms that support a mix of mirrored and regular memory are coming.

We'd like to use the mirrored memory for kernel code, data and dynamically allocated data because our machine check recovery code cannot fix problems there. This series modifies the memblock allocator to comprehend mirrored memory and use it for all boot time allocations. Later I'll dig into page_alloc.c to put the leftover mirrored memory into a zone to be used for kernel allocation by slab/slob/slub and others.

You'll see why this is just RFC when you get to part 3.

Tony Luck (3):
mm/memblock: Add extra "flag" to memblock to allow selection of memory
based on attribute
mm/memblock: Allocate boot time data structures from mirrored memory x86, mirror: x86 enabling - find mirrored memory ranges and tell
memblock

 arch/s390/kernel/crash_dump.c |   4 +-
 arch/sparc/mm/init_64.c       |   4 +-
 arch/x86/kernel/check.c       |   2 +-
 arch/x86/kernel/e820.c        |   2 +-
 arch/x86/mm/init_32.c         |   2 +-
 arch/x86/mm/memtest.c         |   2 +-
 include/linux/memblock.h      |  43 ++++++++++------
 mm/cma.c                      |   4 +-
 mm/memblock.c                 | 113 ++++++++++++++++++++++++++++++++----------
 mm/nobootmem.c                |  12 ++++-
 10 files changed, 135 insertions(+), 53 deletions(-)
Signature · 1 line
2.1.0