From: Yinghai Lu <yinghai@kernel.org>
To: Ingo Molnar <mingo@elte.hu>, Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>,
Andrew Morton <akpm@linux-foundation.org>,
David Miller <davem@davemloft.net>,
Be
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Johannes Weiner <hannes@cmpxchg.org>,
linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org,
Yinghai Lu <yinghai@kernel.org>
Subject: [PATCH -v22 00/23] Use lmb with x86
Date: Sat, 3 Jul 2010 23:56:04 -0700 [thread overview]
Message-ID: <1278226587-31213-1-git-send-email-yinghai@kernel.org> (raw)
New lmb could be used to replace early_res in x86.
Suggested by: David, Ben, and Thomas
-v18: change lmb_find_area to lmb_find_in_range
kill __lmb_find_area and use lmb_find_area directly
remove lmb_add_memory
change lmb_reserve_area to lmb_reserve_range
change lmb_free_area to lmb_free_range
don't clear lmb.reserved after converting
use for_each_lmb to replace for cycle
rebase to 06/15/2010 powerpc/lmb
-v19: make the patchset only focus on lmb related.
will submit patches about bootmem/nobootmem seperating and other e820
related later after this one.
-v20: put ben change together...
add lmb_dbg() according to Ingo
-v21: debug print add # for 0x
removed old bootmem support for x86 according to Ingo, Thomas and HPA
change LMB_ERROR to 0 according to Linus
-v22: change x86 related lmb to lmb_x86_ instead of according to Ingo
patch 19: has to be done in one shoot to switch from early_res to lmb.
please pull from powerpc/lmb, and apply this patchset.
todo:
replace range handling (subtracting) with lmb.
Thanks
Yinghai Lu
Ben's lmb changes in powerpc/lmb:
arch/microblaze/include/asm/lmb.h | 3 -
arch/microblaze/mm/init.c | 18 +-
arch/powerpc/include/asm/lmb.h | 7 -
arch/powerpc/include/asm/mmu.h | 12 +
arch/powerpc/kernel/head_40x.S | 6 +-
arch/powerpc/kernel/paca.c | 2 +-
arch/powerpc/kernel/prom.c | 15 +-
arch/powerpc/kernel/rtas.c | 2 +-
arch/powerpc/kernel/setup_32.c | 2 +-
arch/powerpc/kernel/setup_64.c | 2 +-
arch/powerpc/mm/40x_mmu.c | 17 +-
arch/powerpc/mm/44x_mmu.c | 14 +
arch/powerpc/mm/fsl_booke_mmu.c | 12 +-
arch/powerpc/mm/hash_utils_64.c | 35 ++-
arch/powerpc/mm/init_32.c | 43 +-
arch/powerpc/mm/init_64.c | 1 +
arch/powerpc/mm/mem.c | 94 ++---
arch/powerpc/mm/numa.c | 17 +-
arch/powerpc/mm/ppc_mmu_32.c | 18 +-
arch/powerpc/mm/tlb_nohash.c | 16 +
arch/powerpc/platforms/embedded6xx/wii.c | 2 +-
arch/sh/include/asm/lmb.h | 2 -
arch/sh/mm/init.c | 16 +-
arch/sparc/include/asm/lmb.h | 2 -
arch/sparc/mm/init_64.c | 46 +--
include/linux/lmb.h | 142 ++++--
lib/lmb.c | 745 +++++++++++++++++++-----------
27 files changed, 808 insertions(+), 483 deletions(-)
x86_lmb changes:
arch/x86/Kconfig | 15 +-
arch/x86/include/asm/e820.h | 20 +-
arch/x86/include/asm/efi.h | 2 +-
arch/x86/include/asm/lmb.h | 21 ++
arch/x86/kernel/acpi/sleep.c | 7 +-
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 | 8 +-
arch/x86/mm/Makefile | 2 +
arch/x86/mm/init.c | 7 +-
arch/x86/mm/init_32.c | 66 +-----
arch/x86/mm/init_64.c | 67 +-----
arch/x86/mm/k8topology_64.c | 4 +-
arch/x86/mm/lmb.c | 359 ++++++++++++++++++++++++
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/lmb.h | 20 ++
include/linux/mm.h | 2 +
kernel/Makefile | 1 -
kernel/early_res.c | 584 ---------------------------------------
lib/lmb.c | 68 +++--
mm/bootmem.c | 11 +-
mm/page_alloc.c | 72 +++--
mm/sparse-vmemmap.c | 11 -
38 files changed, 702 insertions(+), 1134 deletions(-)
create mode 100644 arch/x86/include/asm/lmb.h
create mode 100644 arch/x86/mm/lmb.c
delete mode 100644 include/linux/early_res.h
delete mode 100644 kernel/early_res.c
total:
arch/powerpc/platforms/embedded6xx/wii.c | 2 +-
arch/sh/include/asm/lmb.h | 2 -
arch/sh/mm/init.c | 16 +-
arch/sparc/include/asm/lmb.h | 2 -
arch/sparc/mm/init_64.c | 46 +--
arch/x86/Kconfig | 15 +-
arch/x86/include/asm/e820.h | 20 +-
arch/x86/include/asm/efi.h | 2 +-
arch/x86/include/asm/lmb.h | 21 +
arch/x86/kernel/acpi/sleep.c | 7 +-
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 | 8 +-
arch/x86/mm/Makefile | 2 +
arch/x86/mm/init.c | 7 +-
arch/x86/mm/init_32.c | 66 +---
arch/x86/mm/init_64.c | 67 +---
arch/x86/mm/k8topology_64.c | 4 +-
arch/x86/mm/lmb.c | 359 ++++++++++++++
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/lmb.h | 162 +++++--
include/linux/mm.h | 2 +
kernel/Makefile | 1 -
kernel/early_res.c | 584 -----------------------
lib/lmb.c | 755 +++++++++++++++++++-----------
mm/bootmem.c | 11 +-
mm/page_alloc.c | 72 ++-
mm/sparse-vmemmap.c | 11 -
63 files changed, 1481 insertions(+), 1588 deletions(-)
create mode 100644 arch/x86/include/asm/lmb.h
create mode 100644 arch/x86/mm/lmb.c
delete mode 100644 include/linux/early_res.h
delete mode 100644 kernel/early_res.c
WARNING: multiple messages have this Message-ID (diff)
From: Yinghai Lu <yinghai@kernel.org>
To: Ingo Molnar <mingo@elte.hu>, Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>,
Andrew Morton <akpm@linux-foundation.org>,
David Miller <davem@davemloft.net>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Johannes Weiner <hannes@cmpxchg.org>,
linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org,
Yinghai Lu <yinghai@kernel.org>
Subject: [PATCH -v22 00/23] Use lmb with x86
Date: Sat, 3 Jul 2010 23:56:04 -0700 [thread overview]
Message-ID: <1278226587-31213-1-git-send-email-yinghai@kernel.org> (raw)
Message-ID: <20100704065604.TgTGXxUoOsSW9Twr0kdgt87VjGNLrnVyFx5GoVvBJSI@z> (raw)
New lmb could be used to replace early_res in x86.
Suggested by: David, Ben, and Thomas
-v18: change lmb_find_area to lmb_find_in_range
kill __lmb_find_area and use lmb_find_area directly
remove lmb_add_memory
change lmb_reserve_area to lmb_reserve_range
change lmb_free_area to lmb_free_range
don't clear lmb.reserved after converting
use for_each_lmb to replace for cycle
rebase to 06/15/2010 powerpc/lmb
-v19: make the patchset only focus on lmb related.
will submit patches about bootmem/nobootmem seperating and other e820
related later after this one.
-v20: put ben change together...
add lmb_dbg() according to Ingo
-v21: debug print add # for 0x
removed old bootmem support for x86 according to Ingo, Thomas and HPA
change LMB_ERROR to 0 according to Linus
-v22: change x86 related lmb to lmb_x86_ instead of according to Ingo
patch 19: has to be done in one shoot to switch from early_res to lmb.
please pull from powerpc/lmb, and apply this patchset.
todo:
replace range handling (subtracting) with lmb.
Thanks
Yinghai Lu
Ben's lmb changes in powerpc/lmb:
arch/microblaze/include/asm/lmb.h | 3 -
arch/microblaze/mm/init.c | 18 +-
arch/powerpc/include/asm/lmb.h | 7 -
arch/powerpc/include/asm/mmu.h | 12 +
arch/powerpc/kernel/head_40x.S | 6 +-
arch/powerpc/kernel/paca.c | 2 +-
arch/powerpc/kernel/prom.c | 15 +-
arch/powerpc/kernel/rtas.c | 2 +-
arch/powerpc/kernel/setup_32.c | 2 +-
arch/powerpc/kernel/setup_64.c | 2 +-
arch/powerpc/mm/40x_mmu.c | 17 +-
arch/powerpc/mm/44x_mmu.c | 14 +
arch/powerpc/mm/fsl_booke_mmu.c | 12 +-
arch/powerpc/mm/hash_utils_64.c | 35 ++-
arch/powerpc/mm/init_32.c | 43 +-
arch/powerpc/mm/init_64.c | 1 +
arch/powerpc/mm/mem.c | 94 ++---
arch/powerpc/mm/numa.c | 17 +-
arch/powerpc/mm/ppc_mmu_32.c | 18 +-
arch/powerpc/mm/tlb_nohash.c | 16 +
arch/powerpc/platforms/embedded6xx/wii.c | 2 +-
arch/sh/include/asm/lmb.h | 2 -
arch/sh/mm/init.c | 16 +-
arch/sparc/include/asm/lmb.h | 2 -
arch/sparc/mm/init_64.c | 46 +--
include/linux/lmb.h | 142 ++++--
lib/lmb.c | 745 +++++++++++++++++++-----------
27 files changed, 808 insertions(+), 483 deletions(-)
x86_lmb changes:
arch/x86/Kconfig | 15 +-
arch/x86/include/asm/e820.h | 20 +-
arch/x86/include/asm/efi.h | 2 +-
arch/x86/include/asm/lmb.h | 21 ++
arch/x86/kernel/acpi/sleep.c | 7 +-
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 | 8 +-
arch/x86/mm/Makefile | 2 +
arch/x86/mm/init.c | 7 +-
arch/x86/mm/init_32.c | 66 +-----
arch/x86/mm/init_64.c | 67 +-----
arch/x86/mm/k8topology_64.c | 4 +-
arch/x86/mm/lmb.c | 359 ++++++++++++++++++++++++
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/lmb.h | 20 ++
include/linux/mm.h | 2 +
kernel/Makefile | 1 -
kernel/early_res.c | 584 ---------------------------------------
lib/lmb.c | 68 +++--
mm/bootmem.c | 11 +-
mm/page_alloc.c | 72 +++--
mm/sparse-vmemmap.c | 11 -
38 files changed, 702 insertions(+), 1134 deletions(-)
create mode 100644 arch/x86/include/asm/lmb.h
create mode 100644 arch/x86/mm/lmb.c
delete mode 100644 include/linux/early_res.h
delete mode 100644 kernel/early_res.c
total:
arch/powerpc/platforms/embedded6xx/wii.c | 2 +-
arch/sh/include/asm/lmb.h | 2 -
arch/sh/mm/init.c | 16 +-
arch/sparc/include/asm/lmb.h | 2 -
arch/sparc/mm/init_64.c | 46 +--
arch/x86/Kconfig | 15 +-
arch/x86/include/asm/e820.h | 20 +-
arch/x86/include/asm/efi.h | 2 +-
arch/x86/include/asm/lmb.h | 21 +
arch/x86/kernel/acpi/sleep.c | 7 +-
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 | 8 +-
arch/x86/mm/Makefile | 2 +
arch/x86/mm/init.c | 7 +-
arch/x86/mm/init_32.c | 66 +---
arch/x86/mm/init_64.c | 67 +---
arch/x86/mm/k8topology_64.c | 4 +-
arch/x86/mm/lmb.c | 359 ++++++++++++++
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/lmb.h | 162 +++++--
include/linux/mm.h | 2 +
kernel/Makefile | 1 -
kernel/early_res.c | 584 -----------------------
lib/lmb.c | 755 +++++++++++++++++++-----------
mm/bootmem.c | 11 +-
mm/page_alloc.c | 72 ++-
mm/sparse-vmemmap.c | 11 -
63 files changed, 1481 insertions(+), 1588 deletions(-)
create mode 100644 arch/x86/include/asm/lmb.h
create mode 100644 arch/x86/mm/lmb.c
delete mode 100644 include/linux/early_res.h
delete mode 100644 kernel/early_res.c
next reply other threads:[~2010-07-04 6:56 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-04 6:56 Yinghai Lu [this message]
2010-07-04 6:56 ` [PATCH -v22 00/23] Use lmb with x86 Yinghai Lu
2010-07-04 6:56 ` [PATCH 01/23] lmb: lmb_find_base() should return LMB_ERROR on failing path Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 02/23] lmb: Prepare x86 to use lmb to replace early_res Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 03/23] lmb: Print new doubled array location info Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-08 18:55 ` Bjorn Helgaas
2010-07-08 20:07 ` Yinghai Lu
2010-07-09 6:19 ` Benjamin Herrenschmidt
2010-07-09 6:19 ` Benjamin Herrenschmidt
2010-07-04 6:56 ` [PATCH 04/23] lmb: Export LMB_ERROR again Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 05/23] lmb: Prepare to include linux/lmb.h in core file Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 06/23] lmb: Add ARCH_DISCARD_LMB to put lmb code to .init Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 07/23] lmb: Add lmb_find_in_range() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 08/23] x86, lmb: Add lmb_x86_find_in_range_size() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 09/23] bootmem, x86: Add weak version of reserve_bootmem_generic Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 10/23] x86, lmb: Add lmb_x86_to_bootmem() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 11/23] x86,lmb: Add lmb_x86_reserve_range/lmb_x86_free_range Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 12/23] x86, lmb: Add get_free_all_memory_range() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 13/23] x86, lmb: Add lmb_x86_register_active_regions() and lmb_x86_hole_size() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 14/23] lmb: Add find_memory_core_early() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 15/23] x86, lmb: Add lmb_x86_find_in_range_node() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 16/23] x86, lmb: Add lmb_x86_free_memory_in_range() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 17/23] x86, lmb: Add lmb_x86_memory_in_range() Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 18/23] x86, lmb: Use lmb_debug to control debug message print out Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 19/23] x86: Use lmb to replace early_res Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 20/23] x86: Replace e820_/_early string with lmb_ Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 21/23] x86: Remove not used early_res code Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 22/23] x86, lmb: Use lmb_memory_size()/lmb_free_memory_size() to get correct dma_reserve Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
2010-07-04 6:56 ` [PATCH 23/23] x86: remove old bootmem code Yinghai Lu
2010-07-04 6:56 ` Yinghai Lu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1278226587-31213-1-git-send-email-yinghai@kernel.org \
--to=yinghai@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=davem@davemloft.net \
--cc=hannes@cmpxchg.org \
--cc=hpa@zytor.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox