binutils 2.19 issue with kernel link
Kumar Gala
galak at kernel.crashing.org
Sat Jul 11 01:27:26 EST 2009
On Jul 10, 2009, at 9:37 AM, Kumar Gala wrote:
>
> On Jul 9, 2009, at 11:15 PM, Alan Modra wrote:
>
>> On Thu, Jul 09, 2009 at 02:31:53PM -0500, Edmar Wienskoski-RA8797
>> wrote:
>>> I understand your arguments, but there is something inconsistent
>>> about this.
>>> If I change the script to be:
>>> _end3 = . ;
>>> . = _end3;
>>> . = ALIGN(PAGE_SIZE);
>>> _end = . ;
>>> PROVIDE32 (end = .);
>>> }
>>> The result is corrected:
>>> c067f678 A _end3
>>> c0680000 A _end
>>>
>>> Why the apuinfo section with zero VMA sometimes interfere with "."
>>> and
>>> sometimes not ?
>>
>> I said it was weird in my last email. Not so. The orphan gets
>> placed
>> between
>>
>> _end3 = . ;
>> . = _end3;
>>
>> So dot is restored after the orphan section sets it.
>
> This seems to be a bit of a chick and egg scenario. Older kernel
> linker scripts aren't going to cover all sections and thus may have
> orphan sections. How do we ensure _end can be set properly under
> such conditions?
Not sure if this helps, but I've isolated down the version of binutils
that changes to:
binutils-2.19 _end is what we expect
binutils-2.19.1 _end is what we expect
binutils-2.19.50.0.1 _end is what we expect
binutils-2.19.51.0.1 _end is 00001000
From the release notes:
binutils-2.19.50.0.1 is based on CVS binutils 2008 1007
binutils-2.19.51.0.1 is based on CVS binutils 2009 0106
- k
More information about the Linuxppc-dev
mailing list