[RFT/RFC PATCH 6/6] ARM: keep .text and .fixup regions together

Ard Biesheuvel ard.biesheuvel at linaro.org
Fri Mar 13 04:26:11 PDT 2015


On 13 March 2015 at 12:18, Arnd Bergmann <arnd at arndb.de> wrote:
> On Thursday 12 March 2015 21:22:02 Russell King - ARM Linux wrote:
>> On Thu, Mar 12, 2015 at 10:18:26PM +0100, Ard Biesheuvel wrote:
>> > >> Note that the TEXT_TEXT macro will emit *(.text) again but this should be
>> > >> harmless.
>> > >
>> > > However, I wonder if by doing this, we're weakening the ability for
>> > > kallsyms final link to succeed:
>> > >
>> > > /* .text section. Map to function alignment to avoid address changes
>> > >  * during second ld run in second ld pass when generating System.map */
>> > >
>> > > Can we not just move .fixup before TEXT_TEXT?  The only thing between it
>> > > and .text would be .text.hot.
>> > >
>> >
>> > Putting .fixup before .text already helps, but not enough for the
>> > .config Arnd gave me that I have been testing this with.
>> >
>> > What *(.text .fixup) does (i.e., putting both section names inside the
>> > parentheses), is emitting both sections for each input object file, so
>> > they will always be close to the object that it refers to, so it is
>> > not the same thing.
>>
>> I'll suggest a different solution then - how about modifying
>> asm-generic/vmlinux.lds.h to change *(.text) to *(.text .text.fixup)
>> and we move all the .fixup sections to .text.fixup ?  Arnd?
>
> No objections from me, but I really don't know enough about the possible
> side-effects this may have on the other architectures, so we need to
> run this by the linux-arch mailing list.
>

I don't think it could affect any other architecture if nobody is
populating .text.fixup yet.



More information about the linux-arm-kernel mailing list