linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/3] ARM: compressed/misc.c: simplify decompress_kernel()
Date: Thu, 28 Apr 2011 01:17:59 -0700	[thread overview]
Message-ID: <20110428081759.GM3755@atomide.com> (raw)
In-Reply-To: <alpine.LFD.2.00.1104271043160.24613@xanadu.home>

* Nicolas Pitre <nicolas.pitre@linaro.org> [110427 07:44]:
> On Wed, 27 Apr 2011, Russell King - ARM Linux wrote:
> 
> > On Wed, Apr 20, 2011 at 12:15:03AM -0400, Nicolas Pitre wrote:
> > > The return value for decompress_kernel() is no longer used.  Furthermore,
> > > this was obtained and stored in a variable called output_ptr which is
> > > a complete misnomer for what is actually the size of the decompressed
> > > kernel image.  Let's get rid of it.
> > > 
> > > Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
> > > ---
> > > 
> > > BTW, I've yet to understand why, but this patch makes CONFIG_KERNEL_LZMA
> > > work for me.
> > 
> > Hmm.  I've switched almost entirely to LZMA since it was introduced and it
> > works for me on all my platforms.  I haven't tested kernels rigorously since
> > your patches to the decompressor, so maybe there's a regression in there
> > somewhere.
> > 
> > Can you try LZMA with your various patches over the last four months
> > reverted?
> 
> Yes I did, and the issue turned up to be about the stack alignment wich 
> was not enforced to a 64 bit boundary.  Depending on the size of the 
> code and compressed kernel data, the stack would end up properly aligned 
> with a 50% probability.  And this was a problem only if your gcc version 
> emited LDRD/STRD type accesses to the stack.
> 
> I'm about to send you a pull request with all those fixes.

Just to summarize, looks like there are three regressions:

1. The stack alignment mentioned above
2. Stack overwriting relocated kernel with cache flush in some cases on ARMv7
3. Reloction overwriting running code when the relocate offset is small

These fixes would be nice to get merged in the -rc cycle. Then the
other patches like the static usage in uncompress.h can probably wait
until the merge window.

Regards,

Tony

  parent reply	other threads:[~2011-04-28  8:17 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-20  4:15 [PATCH 0/3] fix some issues with the kernel decompressor Nicolas Pitre
2011-04-20  4:15 ` [PATCH 1/3] ARM: zImage: no need to get the decompressed size from the filesystem Nicolas Pitre
2011-04-21 12:47   ` Tony Lindgren
2011-04-20  4:15 ` [PATCH 2/3] ARM: compressed/misc.c: simplify decompress_kernel() Nicolas Pitre
2011-04-21 12:49   ` Tony Lindgren
2011-04-27  8:53   ` Russell King - ARM Linux
2011-04-27 14:48     ` Nicolas Pitre
2011-04-28  8:12       ` Russell King - ARM Linux
2011-04-28  8:17       ` Tony Lindgren [this message]
2011-04-28 18:20         ` Nicolas Pitre
2011-04-29  7:17           ` Tony Lindgren
2011-04-20  4:15 ` [PATCH 3/3] ARM: zImage: fix issues with missing GOT entries for some global variables Nicolas Pitre
2011-04-20  8:42   ` Uwe Kleine-König
2011-04-20  9:19     ` Shawn Guo
2011-04-20 12:28     ` Nicolas Pitre
2011-04-20 12:36       ` Uwe Kleine-König
2011-04-20 12:47         ` Nicolas Pitre
2011-04-27  8:58           ` Russell King - ARM Linux
2011-04-27 15:00             ` Nicolas Pitre
2011-04-20 12:52       ` Shawn Guo
2011-04-20 13:03         ` Nicolas Pitre
2011-04-20 13:17           ` Nicolas Pitre
2011-04-21 12:50   ` Tony Lindgren
2011-04-27  8:55   ` Russell King - ARM Linux
2011-04-27 14:55     ` Nicolas Pitre
2011-04-20  7:21 ` [PATCH 0/3] fix some issues with the kernel decompressor Tony Lindgren
2011-04-20 13:00   ` Nicolas Pitre
2011-04-20 16:55     ` Tony Lindgren
2011-04-20 17:19       ` Nicolas Pitre
2011-04-21  5:59         ` Tony Lindgren
2011-04-21 10:49           ` [PATCH] ARM: Fix relocation if image end past uncompressed kernel end Tony Lindgren
2011-04-21 13:22             ` Nicolas Pitre
2011-04-21 21:26               ` Nicolas Pitre
2011-04-22  3:23                 ` Nicolas Pitre
2011-04-22  5:19                   ` Shawn Guo
2011-04-22  5:36                     ` Shawn Guo
2011-04-22  6:28                   ` Tony Lindgren
2011-04-22 14:12                     ` Nicolas Pitre
2011-04-26  8:57                       ` Tony Lindgren
2011-04-26 12:37                         ` [PATCH] ARM: Fix bad SP address after relocating kernel Tony Lindgren
2011-04-26 21:31                           ` Nicolas Pitre
2011-04-27  7:48                             ` Tony Lindgren
2011-04-22  6:09               ` [PATCH] ARM: Fix relocation if image end past uncompressed kernel end Tony Lindgren
2011-04-27 12:47               ` Tony Lindgren
2011-04-27 12:56                 ` Tony Lindgren
2011-04-27 22:16                   ` Nicolas Pitre
2011-04-28  6:38                     ` Tony Lindgren
2011-04-28  8:12                       ` Tony Lindgren
2011-04-20 11:16 ` [PATCH 0/3] fix some issues with the kernel decompressor Shawn Guo

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=20110428081759.GM3755@atomide.com \
    --to=tony@atomide.com \
    --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).