diff options
author | Michal Simek <monstr@monstr.eu> | 2009-10-30 14:41:52 +0100 |
---|---|---|
committer | Michal Simek <monstr@monstr.eu> | 2009-12-14 08:40:08 +0100 |
commit | 13cdee23296c437cdd0262a09c3455de8e1e85b2 (patch) | |
tree | a08a78c7a72b8d049e7c4ecb86f1da105051497a | |
parent | 42a2478b789cb1b4335909e0fecc721c07be7d90 (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>
-rw-r--r-- | arch/microblaze/kernel/vmlinux.lds.S | 1 |
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 { _KERNEL_SDA_BASE_ = _ssro + (_ssro_size / 2) ; } + . = ALIGN(PAGE_SIZE); __init_begin = .; INIT_TEXT_SECTION(PAGE_SIZE) |