Skip to content

Use memblock with x86

Yinghai Lu linux-arch lkml 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest17 patches 0 repliesNew

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/17memblock: Add memblock_free/reserve_reserved_regions()include/linux/memblock.h mm/memblock.c+26 -00 replies
1/17memblock: Add memblock_free/reserve_reserved_regions()include/linux/memblock.h mm/memblock.c+26 -00 replies
2/17x86, memblock: Add memblock_x86_find_in_range_size()arch/x86/include/asm/memblock.h arch/x86/mm/Makefile arch/x86/mm/memblock.c+98 -00 replies
3/17bootmem, x86: Add weak version of reserve_bootmem_genericarch/x86/mm/init_32.c arch/x86/mm/init_64.c mm/bootmem.c+8 -240 replies
4/17x86, memblock: Add memblock_x86_to_bootmem()arch/x86/include/asm/memblock.h arch/x86/mm/memblock.c+29 -00 replies
5/17x86,memblock: Add memblock_x86_reserve_range/memblock_x86_free_rangearch/x86/include/asm/memblock.h arch/x86/mm/memblock.c+25 -00 replies
6/17x86, memblock: Add get_free_all_memory_range()arch/x86/include/asm/memblock.h arch/x86/mm/memblock.c+99 -10 replies
7/17x86, memblock: Add memblock_x86_register_active_regions() and memblock_x86_hole_size()arch/x86/include/asm/memblock.h arch/x86/mm/memblock.c+71 -00 replies
8/17memblock: Add find_memory_core_early()include/linux/mm.h mm/page_alloc.c+38 -00 replies
9/17x86, memblock: Add memblock_x86_find_in_range_node()arch/x86/include/asm/memblock.h arch/x86/mm/memblock.c+16 -00 replies
10/17x86, memblock: Add memblock_x86_free_memory_in_range()arch/x86/include/asm/memblock.h arch/x86/mm/memblock.c+49 -00 replies
11/17x86, memblock: Add memblock_x86_memory_in_range()arch/x86/include/asm/memblock.h arch/x86/mm/memblock.c+18 -10 replies
12/17x86, memblock: Use memblock_debug to control debug message print outarch/x86/mm/memblock.c+12 -80 replies
13/17x86: Use memblock to replace early_resarch/x86/Kconfig arch/x86/include/asm/e820.h arch/x86/kernel/check.c +11 more+141 -1990 replies
14/17x86: Replace e820_/_early string with memblock_arch/x86/include/asm/efi.h arch/x86/kernel/acpi/sleep.c arch/x86/kernel/apic/numaq_32.c +17 more+105 -920 replies
15/17x86: Remove not used early_res codearch/x86/include/asm/e820.h arch/x86/kernel/e820.c include/linux/early_res.h +2 more+0 -6800 replies
16/17x86, memblock: Use memblock_memory_size()/memblock_free_memory_size() to get correct dma_reservearch/x86/include/asm/e820.h arch/x86/kernel/e820.c arch/x86/kernel/setup.c +1 more+20 -70 replies
17/17x86: remove old bootmem codearch/x86/Kconfig arch/x86/kernel/setup.c arch/x86/mm/init_32.c +4 more+1 -1890 replies

Reviews trailers per patch

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

Read the v1 thread

Cover letter [PATCH -v27 00/17] Use memblock with x86

New memblock could be used to replace early_res in x86.

Suggested by: David, Ben, and Thomas

-v25: update to mainline with kmemleak fix on nobootmem
also rename lmb to memblock alread in mainline

-v26: according to Linus and hpa, seperate the big patchset to small ones.

-v27: rebase to Ben's powerpc/memblock
add memblock_free_reserved_regions() so don't need to export init regions

this one is x86 related, finally we can remove bootmem code in x86 and early_res code.

Thanks

Yinghai Lu

[PATCH 01/17] memblock: Add memblock_free/reserve_reserved_regions()
[PATCH 02/17] x86, memblock: Add memblock_x86_find_in_range_size()
[PATCH 03/17] bootmem, x86: Add weak version of reserve_bootmem_generic
[PATCH 04/17] x86, memblock: Add memblock_x86_to_bootmem()
[PATCH 05/17] x86,memblock: Add memblock_x86_reserve_range/memblock_x86_free_range
[PATCH 06/17] x86, memblock: Add get_free_all_memory_range()
[PATCH 07/17] x86, memblock: Add memblock_x86_register_active_regions() and memblock_x86_hole_size() [PATCH 08/17] memblock: Add find_memory_core_early()
[PATCH 09/17] x86, memblock: Add memblock_x86_find_in_range_node()
[PATCH 10/17] x86, memblock: Add memblock_x86_free_memory_in_range()
[PATCH 11/17] x86, memblock: Add memblock_x86_memory_in_range()
[PATCH 12/17] x86, memblock: Use memblock_debug to control debug message print out
[PATCH 13/17] x86: Use memblock to replace early_res
[PATCH 14/17] x86: Replace e820_/_early string with memblock_
[PATCH 15/17] x86: Remove not used early_res code
[PATCH 16/17] x86, memblock: Use memblock_memory_size()/memblock_free_memory_size() to get correct dma_reserve [PATCH 17/17] x86: remove old bootmem code

 arch/x86/Kconfig                |   15 +-
 arch/x86/include/asm/e820.h     |   20 +-
 arch/x86/include/asm/efi.h      |    2 +-
 arch/x86/include/asm/memblock.h |   21 ++
 arch/x86/kernel/acpi/sleep.c    |    9 +-
 arch/x86/kernel/apic/numaq_32.c |    3 +-
 arch/x86/kernel/check.c         |   16 +-
 arch/x86/kernel/e820.c          |  192 ++++---------
 arch/x86/kernel/efi.c           |    5 +-
 arch/x86/kernel/head.c          |    3 +-
 arch/x86/kernel/head32.c        |   10 +-
 arch/x86/kernel/head64.c        |    7 +-
 arch/x86/kernel/mpparse.c       |    5 +-
 arch/x86/kernel/setup.c         |   78 +++--
 arch/x86/kernel/setup_percpu.c  |    6 -
 arch/x86/kernel/trampoline.c    |   10 +-
 arch/x86/mm/Makefile            |    2 +
 arch/x86/mm/init.c              |   10 +-
 arch/x86/mm/init_32.c           |   66 +-----
 arch/x86/mm/init_64.c           |   67 +-----
 arch/x86/mm/k8topology_64.c     |    4 +-
 arch/x86/mm/memblock.c          |  355 +++++++++++++++++++++++
 arch/x86/mm/memtest.c           |    7 +-
 arch/x86/mm/numa_32.c           |   28 +-
 arch/x86/mm/numa_64.c           |   84 ++-----
 arch/x86/mm/srat_32.c           |    3 +-
 arch/x86/mm/srat_64.c           |   11 +-
 arch/x86/xen/mmu.c              |    5 +-
 arch/x86/xen/setup.c            |    3 +-
 include/linux/early_res.h       |   23 --
 include/linux/memblock.h        |    2 +
 include/linux/mm.h              |    2 +
 kernel/Makefile                 |    1 -
 kernel/early_res.c              |  590 ---------------------------------------
 mm/bootmem.c                    |   13 +-
 mm/memblock.c                   |   24 ++
 mm/page_alloc.c                 |   86 ++++---
 mm/sparse-vmemmap.c             |   11 -
 38 files changed, 677 insertions(+), 1122 deletions(-)
 create mode 100644 arch/x86/include/asm/memblock.h
 create mode 100644 arch/x86/mm/memblock.c
 delete mode 100644 include/linux/early_res.h
 delete mode 100644 kernel/early_res.c