powerpc/vmlinux.lds: Move _edata down
authorMichael Ellerman <michael@ellerman.id.au>
Sun, 9 Aug 2009 19:06:24 +0000 (19:06 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Thu, 20 Aug 2009 00:29:29 +0000 (10:29 +1000)
Currently _edata does not include several data sections, this causes
the kernel's report of memory usage at boot to not match reality, and
also prevents kmemleak from working - because it scan between _sdata
and _edata for pointers to allocated memory.

This mirrors a similar change made recently to the x86 linker script.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kernel/vmlinux.lds.S

index 8ef8a14..3bb0997 100644 (file)
@@ -245,10 +245,6 @@ SECTIONS
        }
 #endif
 
-       . = ALIGN(PAGE_SIZE);
-       _edata  =  .;
-       PROVIDE32 (edata = .);
-
        /* The initial task and kernel stack */
 #ifdef CONFIG_PPC32
        . = ALIGN(8192);
@@ -282,6 +278,10 @@ SECTIONS
                __nosave_end = .;
        }
 
+       . = ALIGN(PAGE_SIZE);
+       _edata  =  .;
+       PROVIDE32 (edata = .);
+
 /*
  * And finally the bss
  */