Signed-off-by: Franck Bui-Huu <[EMAIL PROTECTED]>
---
 arch/mips/kernel/vmlinux.lds.S |   21 ++++++++++++++++-----
 1 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/arch/mips/kernel/vmlinux.lds.S b/arch/mips/kernel/vmlinux.lds.S
index 5fc2398..8508d3c 100644
--- a/arch/mips/kernel/vmlinux.lds.S
+++ b/arch/mips/kernel/vmlinux.lds.S
@@ -110,7 +110,7 @@ SECTIONS
        _edata =  .;                    /* End of data section */
 
        /* will be freed after init */
-       . = ALIGN(_PAGE_SIZE);          /* Init code and data */
+       . = ALIGN(_PAGE_SIZE);          /* Init code, data and bss */
        __init_begin = .;
        .init.text : {
                _sinittext = .;
@@ -158,12 +158,23 @@ SECTIONS
        }
 #endif
        PERCPU(_PAGE_SIZE)
-       . = ALIGN(_PAGE_SIZE);
-       __init_end = .;
-       /* freed after init ends here */
 
+       /*
+        * We keep init/exit bss sections here to have only one
+        * segment to load. Note that .bss.exit is also discarded
+        * at runtime for the same reason as above.
+        */
+       .exit.bss : {
+               *(.bss.exit)
+       }
        __bss_start = .;        /* BSS */
-       .sbss  : {
+       .init.bss : {
+               *(.bss.init)
+       }
+       . = ALIGN(_PAGE_SIZE);
+       __init_end = .;         /* freed after init ends here */
+
+       .sbss : {
                *(.sbss)
                *(.scommon)
        }
-- 
1.5.3.5

-
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to