original_kernel/arch/powerpc/mm
Michael Ellerman 56ec6462af [PATCH] powerpc/iseries: Fix double phys_to_abs bug in htab_bolt_mapping
Before the merge I updated create_pte_mapping() to work for iSeries, by
calling iSeries_hpte_bolt_or_insert. (4c55130b2a)

Later we changed iSeries_hpte_insert to cope with the bolting case, and called
that instead from create_pte_mapping() (which was renamed to htab_bolt_mapping)
(3c726f8dee).

Unfortunately that change introduced a subtle bug, where we pass an absolute
address to iSeries_hpte_insert() where it expects a physical address. This
leads to us calling phys_to_abs() twice on the physical address, which is
seriously bogus.

This only causes a problem if the absolute address from the first translation
can be looked up again in the chunk_map, which depends on the size and layout
of memory. I've seen it fail on one box, but not others.

The minimal fix is to pass the physical address to iSeries_hpte_insert(). For
2.6.17 we should make phys_to_abs() BUG if we try to double-translate an
address.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2006-02-28 16:25:55 +11:00
..
4xx_mmu.c
44x_mmu.c
Makefile
fault.c [PATCH] powerpc: DABR exceptions should report the address not the PC 2006-01-09 16:03:33 +11:00
fsl_booke_mmu.c
hash_low_32.S
hash_low_64.S
hash_native_64.c [PATCH] powerpc64: fix spinlock recursion in native_hpte_clear 2006-02-24 11:36:29 +11:00
hash_utils_64.c [PATCH] powerpc/iseries: Fix double phys_to_abs bug in htab_bolt_mapping 2006-02-28 16:25:55 +11:00
hugetlbpage.c
imalloc.c
init_32.c
init_64.c
lmb.c [PATCH] powerpc: Make sure we don't create empty lmb regions 2006-02-07 21:28:38 +11:00
mem.c [PATCH] powerpc: Cleanup, consolidating icache dirtying logic 2006-02-07 21:51:53 +11:00
mmap.c
mmu_context_32.c
mmu_context_64.c
mmu_decl.h
numa.c [PATCH] powerpc: don't add memory to empty node/zone 2006-01-09 15:14:22 +11:00
pgtable_32.c
pgtable_64.c [PATCH] powerpc: IOMMU: don't ioremap null addresses 2006-01-10 15:30:31 +11:00
ppc_mmu_32.c
slb.c
slb_low.S
stab.c
tlb_32.c
tlb_64.c