This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH v2] bfd/elfnn-aarch64.c: Fix calculation of DT_RELASZ
- From: Marcus Shawcroft <marcus dot shawcroft at gmail dot com>
- To: Will Newton <will dot newton at linaro dot org>
- Cc: Jiong Wang <jiong dot wang at arm dot com>, "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Mon, 24 Mar 2014 12:26:28 +0000
- Subject: Re: [PATCH v2] bfd/elfnn-aarch64.c: Fix calculation of DT_RELASZ
- Authentication-results: sourceware.org; auth=none
- References: <1395330368-19311-1-git-send-email-will dot newton at linaro dot org> <532B2BFC dot 1000309 at arm dot com> <CANu=DmiFrSOxj7CLrTfhcdKu76QKnQ1_EPKAH_Q6VibryXS89A at mail dot gmail dot com>
On 24 March 2014 08:49, Will Newton <will.newton@linaro.org> wrote:
> On 20 March 2014 17:57, Jiong Wang <jiong.wang@arm.com> wrote:
>> On 20/03/14 15:46, Will Newton wrote:
>>>
>>> The current code subtracts the size of the output section containing
>>> relplt from RELASZ. In some cases this will be the same output
>>> section
>>
>>
>> Hi Will,
>>
>> I guess you can only trigger this "same output section" issue when using
>> "ld-aarch64/aarch64.ld", right?
>
> Yes, it requires a custom linker script. The problem arose building
> OSv for aarch64:
>
> https://github.com/cloudius-systems/osv
>
> You could say the linker script is incorrect not to lay out the
> dynamic reloc sections explicitly but it seems counter intuitive
> behaviour to set RELASZ to zero when it clearly isn't.
>
> A number of ports base the size on the size of the output sections:
>
> lm32
> m32r
> nds32
> sh-32
> xtensa
> s390-64
> x86_64
which implies these ports are all broken in the same way ? or do they
address this issue in a different way?
Cheers
/Marcus