aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorMichal Simek <monstr@monstr.eu>2009-10-30 09:41:52 -0400
committerMichal Simek <monstr@monstr.eu>2009-12-14 02:40:08 -0500
commit13cdee23296c437cdd0262a09c3455de8e1e85b2 (patch)
treea08a78c7a72b8d049e7c4ecb86f1da105051497a /arch
parent42a2478b789cb1b4335909e0fecc721c07be7d90 (diff)
microblaze: __init_begin symbol must be aligned
The problem was that free_initmem pass to free_initrd_mem got bad aligned __init_begin symbol and free_initrd_mem don't care about __init_end but take PAGE_SIZE instead. Here is behavior in kernel bootlog. ramdisk_execute_command from (init/main.c) was rewrite Freeing unused kernel memory: 6224k freed Failed to execute ��������������{��� Failed to execute ��������������{����. Attempting defaults... Mounting proc: Mounting var: Signed-off-by: Michal Simek <monstr@monstr.eu>
Diffstat (limited to 'arch')
-rw-r--r--arch/microblaze/kernel/vmlinux.lds.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/microblaze/kernel/vmlinux.lds.S b/arch/microblaze/kernel/vmlinux.lds.S
index e704188d785..ecee15342e6 100644
--- a/arch/microblaze/kernel/vmlinux.lds.S
+++ b/arch/microblaze/kernel/vmlinux.lds.S
@@ -86,6 +86,7 @@ SECTIONS {
86 _KERNEL_SDA_BASE_ = _ssro + (_ssro_size / 2) ; 86 _KERNEL_SDA_BASE_ = _ssro + (_ssro_size / 2) ;
87 } 87 }
88 88
89 . = ALIGN(PAGE_SIZE);
89 __init_begin = .; 90 __init_begin = .;
90 91
91 INIT_TEXT_SECTION(PAGE_SIZE) 92 INIT_TEXT_SECTION(PAGE_SIZE)