summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2005-10-17 20:13:47 +1000
committerPaul Mackerras <paulus@samba.org>2005-10-17 20:13:47 +1000
commitdd184343b45e94fd3b0d4d0865070924bc6195ab (patch)
treef7fe5b1ada69a7a59fdec4793b459d851f911e92
parent7ac59c624992281ff315911dea2a98ca3f3ff06e (diff)
downloadlinux-stable-dd184343b45e94fd3b0d4d0865070924bc6195ab.tar.gz
linux-stable-dd184343b45e94fd3b0d4d0865070924bc6195ab.tar.bz2
linux-stable-dd184343b45e94fd3b0d4d0865070924bc6195ab.zip
powerpc: Clear the BSS at the start of early_init with ARCH=ppc
Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r--arch/powerpc/kernel/setup_32.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/setup_32.c b/arch/powerpc/kernel/setup_32.c
index e68f848f24bf..b95f7cf693e6 100644
--- a/arch/powerpc/kernel/setup_32.c
+++ b/arch/powerpc/kernel/setup_32.c
@@ -294,6 +294,10 @@ unsigned long __init early_init(unsigned long dt_ptr)
{
unsigned long offset = reloc_offset();
+ /* First zero the BSS -- use memset_io, some platforms don't have
+ * caches on yet */
+ memset_io(PTRRELOC(&__bss_start), 0, _end - __bss_start);
+
/*
* Identify the CPU type and fix up code sections
* that depend on which cpu we have.