1 Mar 2005 05:29
[PATCH] ppc64: Fix zImage wrapper incorrect size to flush_cache()
Benjamin Herrenschmidt <benh <at> kernel.crashing.org>
2005-03-01 04:29:25 GMT
2005-03-01 04:29:25 GMT
Hi !
This patch fixes a bug in the ppc64 zImage wrapper causing it to
pass an incorrect size to flush_cache() when flushing the data and
instruction caches prior to jumping to the kernel entry. This causes
crashes on firmare environment that do strict MMU mapping only of
actually allocated areas
Signed-off-by: Benjamin Herrenschmidt <benh <at> kernel.crashing.org>
--- dingo/2.6.10-bk5/arch/ppc64/boot/main.c 2004-12-25 08:35:50.000000000 +1100
+++ 2.6.10-bk5/arch/ppc64/boot/main.c 2005-02-16 17:10:49.194263268 +1100
<at> <at> -200,7 +200,7 <at> <at>
vmlinux.addr += (unsigned long)elf64ph->p_offset;
vmlinux.size -= (unsigned long)elf64ph->p_offset;
- flush_cache((void *)vmlinux.addr, vmlinux.memsize);
+ flush_cache((void *)vmlinux.addr, vmlinux.size);
if (a1)
printf("initrd head: 0x%lx\n\r", *((u32 *)initrd.addr));
RSS Feed