[PATCH] add x86-64 specific support for sparsemem
authorMatt Tolentino <metolent@snoqualmie.dp.intel.com>
Thu, 23 Jun 2005 07:08:07 +0000 (00:08 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Thu, 23 Jun 2005 16:45:07 +0000 (09:45 -0700)
commitbbfceef47fb9467424113a004070bf37a806a97c
tree3c12cef85abaaa0ca42088fc7600ed687b74fb5e
parent2b97690f4cd960779fb351b7cd9974390afabb36
[PATCH] add x86-64 specific support for sparsemem

This patch adds in the necessary support for sparsemem such that x86-64
kernels may use sparsemem as an alternative to discontigmem for NUMA
kernels.  Note that this does no preclude one from continuing to build NUMA
kernels using discontigmem, but merely allows the option to build NUMA
kernels with sparsemem.

Interestingly, the use of sparsemem in lieu of discontigmem in NUMA kernels
results in reduced text size for otherwise equivalent kernels as shown in
the example builds below:

   text    data     bss     dec     hex filename
2371036  765884 1237108 4374028  42be0c vmlinux.discontig
2366549  776484 1302772 4445805  43d66d vmlinux.sparse

Signed-off-by: Matt Tolentino <matthew.e.tolentino@intel.com>
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/x86_64/kernel/setup.c
arch/x86_64/mm/numa.c
include/asm-x86_64/bitops.h
include/asm-x86_64/sparsemem.h [new file with mode: 0644]