diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2007-09-18 17:22:59 +1000 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-09-19 15:25:34 +1000 |
commit | ee7a76da1ef5e3e5e0e54e84319e435ea25c267c (patch) | |
tree | df68b3ffb08df0a243085ddd59a9d4cfb2b01a6d /arch/powerpc/kernel | |
parent | 19a8d97d89442e2bda6245b8a3de2c1fec69a7ad (diff) |
[POWERPC] Size swapper_pg_dir correctly
David Gibson pointed out that swapper_pg_dir actually need to be
PGD_TABLE_SIZE bytes long not PAGE_SIZE. This actually saves 64k in
the bss for a kernel ppc64_defconfig built with CONFIG_PPC_64K_PAGES.
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel')
-rw-r--r-- | arch/powerpc/kernel/asm-offsets.c | 4 | ||||
-rw-r--r-- | arch/powerpc/kernel/head_64.S | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/asm-offsets.c b/arch/powerpc/kernel/asm-offsets.c index a40805328f9b..0ae5d57b9368 100644 --- a/arch/powerpc/kernel/asm-offsets.c +++ b/arch/powerpc/kernel/asm-offsets.c @@ -320,5 +320,9 @@ int main(void) DEFINE(VMALLOC_START_ESID, GET_ESID(VMALLOC_START)); DEFINE(VMALLOC_START_VSID, KERNEL_VSID(VMALLOC_START)); #endif + +#ifdef CONFIG_PPC64 + DEFINE(PGD_TABLE_SIZE, PGD_TABLE_SIZE); +#endif return 0; } diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S index f4ae82e9c92d..384cc75f1cd4 100644 --- a/arch/powerpc/kernel/head_64.S +++ b/arch/powerpc/kernel/head_64.S @@ -1539,4 +1539,4 @@ empty_zero_page: .globl swapper_pg_dir swapper_pg_dir: - .space PAGE_SIZE + .space PGD_TABLE_SIZE |