1
linux/arch/powerpc/mm
Dale Farnsworth 873553b3d6 [POWERPC] 85xx: Failure with odd memory sizes and CONFIG_HIGHMEM
The CONFIG_FSL_BOOKE mmu setup code fails when CONFIG_HIGHMEM=y
and the 3 fixed TLB entries cannot exactly map the lowmem size.
Each TLB entry can map 4MB, 16MB, 64MB or 256MB, so the failure
is observed when the kernel lowmem size is not equal to the
sum of up to 3 of those values.

Normally, memory is sized in nice numbers, but I observed this
problem while testing a crash dump kernel.  The failure can
also be observed by artificially reducing the kernel's main
memory via the mem= kernel command line parameter.

This commit fixes the problem by setting __initial_memory_limit
in adjust_total_lowmem().

Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2007-10-08 08:38:34 -05:00
..
40x_mmu.c [POWERPC] 40x MMU 2007-08-20 07:28:48 -05:00
44x_mmu.c [POWERPC] Remove the dregs of APUS support from arch/powerpc 2007-06-14 22:30:15 +10:00
fault.c [POWERPC] Allow exec faults on readable areas on classic 32-bit PowerPC 2007-07-22 21:30:58 +10:00
fsl_booke_mmu.c [POWERPC] 85xx: Failure with odd memory sizes and CONFIG_HIGHMEM 2007-10-08 08:38:34 -05:00
hash_low_32.S
hash_low_64.S [POWERPC] Fix special PTE code for secondary hash bucket 2007-08-03 19:16:11 +10:00
hash_native_64.c [POWERPC] Move inline asm eieio to using eieio inline function 2007-07-10 00:33:14 -05:00
hash_utils_64.c [POWERPC] Tidy up CONFIG_PPC_MM_SLICES code 2007-08-17 11:01:59 +10:00
hugetlbpage.c [POWERPC] Clean out a bunch of duplicate includes 2007-08-17 11:01:51 +10:00
init_32.c [POWERPC] 8xx: Set initial memory limit. 2007-10-03 20:36:36 -05:00
init_64.c [POWERPC] Add memory regions to the kcore list for 32-bit machines 2007-10-03 09:12:06 +10:00
lmb.c [POWERPC] Fix loop with unsigned long counter variable 2007-07-26 16:12:17 +10:00
Makefile [POWERPC] Create and use CONFIG_WORD_SIZE 2007-10-03 09:12:02 +10:00
mem.c [POWERPC] Clean out a bunch of duplicate includes 2007-08-17 11:01:51 +10:00
mmap.c
mmu_context_32.c [POWERPC] Remove the dregs of APUS support from arch/powerpc 2007-06-14 22:30:15 +10:00
mmu_context_64.c [POWERPC] Tidy up CONFIG_PPC_MM_SLICES code 2007-08-17 11:01:59 +10:00
mmu_decl.h [POWERPC] Kill typedef-ed structs for hash PTEs and BATs 2007-06-14 22:30:16 +10:00
numa.c [POWERPC] Fix parse_drconf_memory() for 64-bit start addresses 2007-08-03 19:36:00 +10:00
pgtable_32.c [POWERPC] Remove a couple of unused definitions from pgtable_32.c 2007-06-14 22:30:15 +10:00
pgtable_64.c [POWERPC] Export new __io{re,un}map_at() symbols 2007-09-14 01:33:21 +10:00
ppc_mmu_32.c [POWERPC] Kill typedef-ed structs for hash PTEs and BATs 2007-06-14 22:30:16 +10:00
slb_low.S
slb.c [POWERPC] Remove barriers from the SLB shadow buffer update 2007-09-19 14:40:54 +10:00
slice.c [POWERPC] Fix non HUGETLB_PAGE build warning 2007-08-17 11:01:58 +10:00
stab.c [POWERPC] Move inline asm eieio to using eieio inline function 2007-07-10 00:33:14 -05:00
tlb_32.c powerpc: tlb_32.c build fix 2007-07-21 17:49:16 -07:00
tlb_64.c [POWERPC] Remove the dregs of APUS support from arch/powerpc 2007-06-14 22:30:15 +10:00