diff options
author | Tony Lindgren <tony@atomide.com> | 2010-10-26 14:52:21 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-10-27 16:40:29 -0400 |
commit | 88d927e94805ebeec11ec7687df7789b954e334e (patch) | |
tree | 972ffd458c87a0f30b05d0648a33e24920fdb63e /arch/arm/kernel/vmlinux.lds.S | |
parent | d463f3633da7307c4162c4b45e0a94bb7fab44d3 (diff) |
ARM: 6465/1: Fix data abort accessing proc_info from __lookup_processor_type
Commit 5085f3ff458521045f7e43da62b8c30ea7df2e82 added better support for
CONFIG_HOTPLUG_CPU by keeping proc_info around. However, depending on
the Kconfig options selected, this can make the booting fail mysteriously
early on.
Turns out a data abort can happen in __lookup_processor in ldmia r5 {r3, r4}.
When it happens the address loaded to r5 is not aligned. Fix the problem by
aligning proc_info.
Reported-by: Anand Gadiyar <gadiyar@ti.com>
Tested-by: Anand Gadiyar <gadiyar@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/kernel/vmlinux.lds.S')
-rw-r--r-- | arch/arm/kernel/vmlinux.lds.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S index 1953e3d21abf..cead8893b46b 100644 --- a/arch/arm/kernel/vmlinux.lds.S +++ b/arch/arm/kernel/vmlinux.lds.S | |||
@@ -113,6 +113,7 @@ SECTIONS | |||
113 | *(.rodata.*) | 113 | *(.rodata.*) |
114 | *(.glue_7) | 114 | *(.glue_7) |
115 | *(.glue_7t) | 115 | *(.glue_7t) |
116 | . = ALIGN(4); | ||
116 | *(.got) /* Global offset table */ | 117 | *(.got) /* Global offset table */ |
117 | ARM_CPU_KEEP(PROC_INFO) | 118 | ARM_CPU_KEEP(PROC_INFO) |
118 | } | 119 | } |