All of lore.kernel.org
 help / color / mirror / Atom feed
From: Albert ARIBAUD <albert.aribaud@free.fr>
To: u-boot@lists.denx.de
Subject: [U-Boot] ARM: Incorrect ROM protection range?
Date: Thu, 24 Feb 2011 14:13:13 +0100	[thread overview]
Message-ID: <4D665969.1@free.fr> (raw)
In-Reply-To: <AANLkTi=Zr+u_=JNQrBNyk8VW1QstsZ7LLA0ORce_8wGZ@mail.gmail.com>

Le 24/02/2011 13:58, Po-Yu Chuang a ?crit :
> Hi Albert,
>
> On Thu, Feb 24, 2011 at 7:58 PM, Albert ARIBAUD<albert.aribaud@free.fr>  wrote:
>> Le 24/02/2011 10:39, Wolfgang Denk a ?crit :
>>>
>>> Dear Albert ARIBAUD,
>>>
>>> In message<4D6611A7.5050802@free.fr>    you wrote:
>>>>
>>>>>>> In the U-Boot image itself, knowing the image size could be achieved
>>>>>>> in
>>>>>>> ARM by using a general _end symbol that would be set after the last
>>>>>>> image output section, so _end-_start would equal the image size.
>>>>>>
>>>>>> we have such a "_end" in u-boot.lds files.
>>>>
>>>> I *knew* this name did not pop up in my mind without a reason. :)
>>>>
>>>> Apologies for not having checked.
>>>>
>>>>> I guess we need a __dynsym_end in all u-boot.lds files.
>>>>
>>>> I'd rather go for "_end", which does not tie the solution to dynsym
>>>> being the last section in the image -- imagine for some reason we move
>>>> dynsym inside the image rather than at the end, end the image size will
>>>> be wrong again. With _end, and a suitable comment in the LD file... this
>>>> will be averted where-ever dynsym ends up.
>>>>
>>>> After all, the bug you uncovered was due to using the wrong symbol, a
>>>> BSS related one rather than an image-related one, in the first place; so
>>>> let's try and learn from past mistakes.
>>>
>>> I think the location of _end in the linker scripts needs to be changed
>>> - so far it covers the maximum of dynsym and bss, but it should refer
>>> to the end of dynsym only.
>>
>> Po-Yu Chuang, can you verify Wolfgang's suggestion (and make sure no other
>> place depends on _end) and submit a patch? As this is a fix, a quick patch
>> could still be pulled in for the upcoming release.
>
> I think there is a problem in Wolfgang's suggestion.
>
> Those start.S files assume that BSS section is from __bss_start to _end.
> If we change _end to the end of .dynsym, then we will not clear BSS correctly.
>
> I agree with your comment about _end is a better choice than __dynsym_end,
> but if we changed _end, maybe we need __bss_end? Either way, we need to
> modify all the u-boot.lds and/or start.S.
>
> I still don't know what is the best solution.

Thanks for pointing this out: indeed, _end is actually used as BSS's 
end, not as the image's end -- I did not find any other use of it.

However, not only ARM uses _end: how do we want to handle the change 
overall?

> best regards,
> Po-Yu Chuang

Amicalement,
-- 
Albert.

  reply	other threads:[~2011-02-24 13:13 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-24  6:06 [U-Boot] ARM: Incorrect ROM protection range? Po-Yu Chuang
2011-02-24  6:52 ` Albert ARIBAUD
2011-02-24  7:07   ` Wolfgang Denk
2011-02-24  7:11   ` Po-Yu Chuang
2011-02-24  7:33   ` Heiko Schocher
2011-02-24  7:40     ` Po-Yu Chuang
2011-02-24  8:07       ` Albert ARIBAUD
2011-02-24  9:39         ` Wolfgang Denk
2011-02-24 11:58           ` Albert ARIBAUD
2011-02-24 12:58             ` Po-Yu Chuang
2011-02-24 13:13               ` Albert ARIBAUD [this message]
2011-02-24 13:41                 ` Wolfgang Denk
2011-02-24 16:01                   ` Albert ARIBAUD
2011-02-24 18:38                     ` Wolfgang Denk
2011-02-24 18:47                       ` Albert ARIBAUD
2011-02-24 20:17                         ` Wolfgang Denk
2011-02-25  2:41                           ` Po-Yu Chuang
2011-02-25  6:34                             ` Albert ARIBAUD
2011-02-25  7:15                               ` Wolfgang Denk
2011-02-25  8:00                                 ` Po-Yu Chuang
2011-03-01  8:31                                   ` Po-Yu Chuang
2011-03-01 12:22                                     ` Albert ARIBAUD
2011-03-02  2:56                                       ` Po-Yu Chuang

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=4D665969.1@free.fr \
    --to=albert.aribaud@free.fr \
    --cc=u-boot@lists.denx.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.