From: linux@arm.linux.org.uk (Russell King - ARM Linux)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: avoid mis-detecting some V7 cores in the decompressor
Date: Mon, 3 Jun 2013 23:38:29 +0100 [thread overview]
Message-ID: <20130603223829.GQ18614@n2100.arm.linux.org.uk> (raw)
In-Reply-To: <alpine.LFD.2.03.1306031726410.1200@syhkavp.arg>
On Mon, Jun 03, 2013 at 05:33:45PM -0400, Nicolas Pitre wrote:
> > On 05/24/13 15:05, Stephen Boyd wrote:
> > > I see a few solutions.
> > >
> > > 1) Relocate with caches off and then turn on caches after we're
> > > running in a location where we won't overwrite ourselves.
>
> Due to the cost of doing memory copy with the cache off, thisoption
> should be conditionally used and only when there is an actual conflict.
>
> > > 2) Have temporary page tables for the relocation phase that live
> > > just below the location we're going to relocate to.
> > >
> > > 3) Force bootloaders loading these types of images to load the
> > > zImage at least as high as the TEXT_OFFSET is compiled to.
> > >
> > > I don't think we can convince everyone that #3 is ok to do. I'm
> > > leaning towards #2 since we get all the benefits of the cache
> > > during the relocation phase but #1 is the obviously simple fix.
>
> I'd consider #2 too.
The problem with #2 is the added complexity it brings. The _whole_
point of loading the kernel at RAM+32K is so that we know that the
32K below the image is available for our use cheaply without playing
all sorts of stupid games with turning caches on and off multiple
times, or changing page tables and such like.
The initialization is already complicated enough, it doesn't need to
become any more complicated.
An even simpler solution to this would be to pad the decompressor
with a branch, and 32K-4 of zeros. That removes the whole problem
without adding much more code, but at the expense of 32K of bloat.
32K is nothing compared to the >1.5MB zImage size we have today.
next prev parent reply other threads:[~2013-06-03 22:38 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-08 21:47 [PATCH] ARM: avoid mis-detecting some V7 cores in the decompressor Stephen Boyd
2013-05-08 21:50 ` Stephen Boyd
2013-05-15 19:38 ` Stephen Boyd
2013-05-23 17:54 ` Stephen Boyd
2013-05-23 23:15 ` Russell King - ARM Linux
2013-05-24 22:05 ` Stephen Boyd
2013-06-03 21:13 ` Stephen Boyd
2013-06-03 21:33 ` Nicolas Pitre
2013-06-03 22:38 ` Russell King - ARM Linux [this message]
2013-06-03 22:23 ` Russell King - ARM Linux
2013-06-03 22:37 ` Stephen Boyd
2013-06-03 22:45 ` Russell King - ARM Linux
2013-06-03 22:59 ` Stephen Boyd
2013-06-04 5:27 ` Nicolas Pitre
2013-06-04 19:47 ` Stephen Boyd
2013-06-04 21:13 ` Nicolas Pitre
2013-06-04 21:45 ` Stephen Boyd
2013-06-05 2:23 ` Nicolas Pitre
2013-06-06 1:29 ` Stephen Boyd
2013-06-06 4:21 ` Nicolas Pitre
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=20130603223829.GQ18614@n2100.arm.linux.org.uk \
--to=linux@arm.linux.org.uk \
--cc=linux-arm-kernel@lists.infradead.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 NNTP newsgroup(s).