From: "H.J. Lu" <hjl.tools@gmail.com>
To: "H.J. Lu" <hjl.tools@gmail.com>, binutils@sourceware.org
Subject: Re: VMA section overlap warnings for overlays
Date: Mon, 30 Aug 2010 05:11:00 -0000 [thread overview]
Message-ID: <AANLkTinzGN=nsB-nnee8Scogx67fCCcWfKVRd7U7H7X=@mail.gmail.com> (raw)
In-Reply-To: <20100830032012.GZ15723@bubble.grove.modra.org>
On Sun, Aug 29, 2010 at 8:20 PM, Alan Modra <amodra@gmail.com> wrote:
> On Sat, Aug 28, 2010 at 06:39:36AM -0700, H.J. Lu wrote:
>> On Sat, Aug 28, 2010 at 6:28 AM, Alan Modra <amodra@gmail.com> wrote:
>> > The real bug was that copy_elf_program_header calculated header_size
>> > from the first section found to be in the segment rather than the
>> > section with the lowest lma. So a one line fix. The rest of this
>> > patch is to cope with (and fix) invalid program header p_paddr values.
>>
>> There is no such a thing as "invalid program header p_paddr values"
>> since ELF spec says it has unspecified contents.
>
> Yes, that's technically true. My language wasn't precise. I should
> have said inconsistent p_paddr values.
>
>> You can't depend on contents in p_addr in objcopy.
>
> Are you saying that objcopy should throw away all p_paddr values?
> That doesn't make sense at all. Just because the ELF spec doesn't
> specify p_paddr, doesn't mean that GNU binutils cannot use p_paddr.
> We use p_paddr to record section LMAs, since ELF section headers only
> have a field for VMAs.
>
>> > I won't commit this immediately as I'd like to run some more tests.
>> >
>> > PR binutils/11953
>> > * elf.c (copy_elf_program_header): Calculate map->header_size
>> > from lowest_section, not first_section. Validate program
>> > header p_paddr against section lma. Find lowest_section in
>> > second loop over headers.
>> >
>>
>> Can we not look at p_addr here?
>
> I don't know what you mean by that question.
>
Can we compute p_addr from other fields and don't check if
it matches the original value?
--
H.J.
next prev parent reply other threads:[~2010-08-30 4:46 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-16 13:29 David Stubbs
2010-04-21 8:25 ` Alan Modra
2010-04-21 14:44 ` David Stubbs
2010-04-22 1:11 ` Alan Modra
2010-04-22 1:53 ` Alan Modra
2010-04-22 12:39 ` David Stubbs
2010-04-24 2:18 ` Alan Modra
2010-05-07 16:14 ` David Stubbs
2010-05-08 11:49 ` Alan Modra
2010-05-12 13:19 ` David Stubbs
2010-05-13 3:37 ` Alan Modra
2010-07-15 8:11 ` Andreas Schwab
2010-07-15 13:10 ` Alan Modra
2010-07-15 13:46 ` Andreas Schwab
2010-07-15 13:53 ` H.J. Lu
2010-07-15 14:12 ` Andreas Schwab
2010-07-15 14:17 ` H.J. Lu
2010-07-15 14:18 ` Alan Modra
2010-07-15 14:26 ` H.J. Lu
2010-07-15 14:36 ` Andreas Schwab
2010-07-15 19:09 ` H.J. Lu
2010-07-16 7:39 ` Andreas Schwab
2010-07-16 10:04 ` Alan Modra
2010-07-19 12:43 ` Andreas Schwab
2010-07-20 5:45 ` Alan Modra
2010-07-20 14:11 ` Alan Modra
2011-02-24 23:49 ` H.J. Lu
2011-02-25 7:49 ` Alan Modra
2011-02-25 10:17 ` Andreas Schwab
2011-02-25 12:30 ` H.J. Lu
2011-02-25 15:55 ` H.J. Lu
2011-02-25 16:23 ` Andreas Schwab
2011-02-25 16:34 ` H.J. Lu
2010-08-28 1:02 ` H.J. Lu
2010-08-28 11:00 ` Alan Modra
2010-08-28 13:39 ` Alan Modra
2010-08-28 17:25 ` H.J. Lu
2010-08-30 4:46 ` Alan Modra
2010-08-30 5:11 ` H.J. Lu [this message]
2010-08-30 6:30 ` Alan Modra
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='AANLkTinzGN=nsB-nnee8Scogx67fCCcWfKVRd7U7H7X=@mail.gmail.com' \
--to=hjl.tools@gmail.com \
--cc=binutils@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).