public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [GIT PULL] x86/bootmem: get rid of bootmem on the x86 platform
@ 2010-03-02 22:32 H. Peter Anvin
  0 siblings, 0 replies; only message in thread
From: H. Peter Anvin @ 2010-03-02 22:32 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: Linux Kernel Mailing List, Andrew Morton, Christoph Lameter,
	Greg Kroah-Hartman, H. Peter Anvin, Ingo Molnar, Jesse Barnes,
	Johannes Weiner, Mel Gorman, Pekka Enberg, Peter Zijlstra,
	Stephen Rothwell, Tejun Heo, Yinghai Lu

Hi Linus,

This patchset allows the earlyres range allocator to replace bootmem.
We have already pushed slab/slub initialization earlier, so the
earlyres allocator can take up the remaining bootmem allocations.
This reduces the total number of allocators used at different phases
of the x86 boot from 4 to 3 (brk, earlyres, full allocator).

  git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git x86-bootmem-for-linus

H. Peter Anvin (2):
      Merge remote branch 'linus/master' into x86/bootmem
      ibmphp: Rename add_range() to add_bus_range() to avoid conflict

Yinghai Lu (29):
      x86: Move range related operation to one file
      x86/pci: Use resource_size_t in update_res
      x86/pci: AMD one chain system to use pci read out res
      x86/pci: Use u64 instead of size_t in amd_bus.c
      x86/pci: Add cap_resource()
      x86/pci: Enable pci root res read out for 32bit too
      x86: Change range end to start+size
      x86: Print out RAM buffer information
      x86: Call early_res_to_bootmem one time
      x86: Introduce max_early_res and early_res_count
      x86: Dynamically increase early_res array size
      x86: Make early_node_mem get mem > 4 GB if possible
      x86: Only call dma32_reserve_bootmem 64bit !CONFIG_NUMA
      x86: Make 64 bit use early_res instead of bootmem before slab
      sparsemem: Put usemap for one node together
      sparsemem: Put mem map for one node together.
      x86: Move bios page reserve early to head32/64.c
      x86: Separate early_res related code from e820.c
      x86: Add find_early_area_size
      x86: Move back find_e820_area to e820.c
      early_res: Enhance check_and_double_early_res
      x86: Make 32bit support NO_BOOTMEM
      Move round_up/down to kernel.h
      x86: Add find_fw_memmap_area
      core: Move early_res from arch/x86 to kernel/
      x86: Fix non-bootmem compilation on PowerPC
      early_res: Add free_early_partial()
      sparsemem: Fix compilation on PowerPC
      early_res: Need to save the allocation name in drop_range_partial()

 arch/mips/mm/init.c                |    2 +-
 arch/score/mm/init.c               |    2 +-
 arch/x86/Kconfig                   |   15 +
 arch/x86/include/asm/e820.h        |    5 +-
 arch/x86/include/asm/page_types.h  |    1 -
 arch/x86/include/asm/pci.h         |    2 +
 arch/x86/include/asm/pci_64.h      |    2 -
 arch/x86/include/asm/proto.h       |   10 -
 arch/x86/kernel/cpu/mtrr/cleanup.c |  208 ++-----------
 arch/x86/kernel/e820.c             |  357 +++--------------------
 arch/x86/kernel/head32.c           |   10 +
 arch/x86/kernel/mmconf-fam10h_64.c |    7 +-
 arch/x86/kernel/pci-dma.c          |   13 +-
 arch/x86/kernel/setup.c            |   29 ++-
 arch/x86/kernel/setup_percpu.c     |    6 +
 arch/x86/mm/init_32.c              |    7 +-
 arch/x86/mm/init_64.c              |    9 +-
 arch/x86/mm/ioremap.c              |   37 ---
 arch/x86/mm/numa_32.c              |    3 +
 arch/x86/mm/numa_64.c              |   97 +++---
 arch/x86/pci/Makefile              |    3 +-
 arch/x86/pci/amd_bus.c             |  127 +++------
 arch/x86/pci/bus_numa.c            |   25 +-
 arch/x86/pci/bus_numa.h            |    9 +-
 arch/x86/pci/i386.c                |    4 -
 drivers/pci/hotplug/ibmphp_res.c   |   14 +-
 include/linux/bootmem.h            |    7 +
 include/linux/early_res.h          |   23 ++
 include/linux/kernel.h             |   10 +
 include/linux/mm.h                 |   14 +
 include/linux/mmzone.h             |    2 +
 include/linux/range.h              |   30 ++
 kernel/Makefile                    |    3 +-
 kernel/early_res.c                 |  578 ++++++++++++++++++++++++++++++++++++
 kernel/range.c                     |  163 ++++++++++
 kernel/resource.c                  |   13 +
 mm/Kconfig                         |    4 +
 mm/bootmem.c                       |  195 ++++++++++++-
 mm/page_alloc.c                    |   61 ++++-
 mm/sparse-vmemmap.c                |   76 +++++-
 mm/sparse.c                        |  196 +++++++++++--
 41 files changed, 1611 insertions(+), 768 deletions(-)
 create mode 100644 include/linux/early_res.h
 create mode 100644 include/linux/range.h
 create mode 100644 kernel/early_res.c
 create mode 100644 kernel/range.c

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-03-02 22:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-02 22:32 [GIT PULL] x86/bootmem: get rid of bootmem on the x86 platform H. Peter Anvin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox