[PATCH 4/7] ARM: Thumb-2: Correct data alignment for CONFIG_THUMB2_KERNEL in kernel/head.S

Dave Martin dave.martin at linaro.org
Wed Nov 17 05:16:42 EST 2010


On Tue, Nov 16, 2010 at 6:22 PM, Russell King - ARM Linux
<linux at arm.linux.org.uk> wrote:
> On Tue, Nov 16, 2010 at 01:14:34PM +0000, Dave Martin wrote:
>> Directives such as .long and .word do not magically cause the
>> assembler location counter to become aligned in gas.  As a
>> result, using these directives in code sections can result in
>> misaligned data words when building a Thumb-2 kernel
>> (CONFIG_THUMB2_KERNEL).
>
>> @@ -413,6 +416,7 @@ __fixup_smp_on_up:
>>       mov     pc, lr
>>  ENDPROC(__fixup_smp)
>>
>> +     .align
>>  1:   .word   .
>>       .word   __smpalt_begin
>>       .word   __smpalt_end
>
> This one is technically bogus because this feature is disabled (and
> incompatible) with Thumb-2 kernels.  So it never gets built for a T2
> kernel.
>

For now, this is true -- I'll soon be looking at making SMP_ON_UP work
for Thumb-2.

When and if that is implemented, I believe this fix will be appropriate.
Would it be better to hold this patch back and re-propose it with the
rest of the SMP_ON_UP changes?

Cheers
---Dave



More information about the linux-arm-kernel mailing list