All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <gregkh@linuxfoundation.org>
To: Krzysztof Kolasa <kkolasa@winsoft.pl>
Cc: Alexander Kuleshov <alex0xax@gmail.com>,
	dsterba@suse.cz, tom.yeon@windriver.com,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCHv2] lz4: fix system halted at boot kernel x86_64 compressed lz4
Date: Fri, 3 Apr 2015 19:36:15 +0200	[thread overview]
Message-ID: <20150403173615.GA11233@kroah.com> (raw)
In-Reply-To: <551EADEF.2060508@winsoft.pl>

On Fri, Apr 03, 2015 at 05:12:47PM +0200, Krzysztof Kolasa wrote:
> Decompression process ends with an error when loading 64bit lz4 kernel:
> 
> Decoding failed
>  -- System halted
> 
> This condition is not needed for 64bit kernel( from the last commit d5e7caf )
> 
> if( ... ||
>     (op + COPYLENGTH) > oend)
>     goto _output_error
> 
> macro LZ4_SECURE_COPY() tests op and does not copy any data
> when op exceeds the value, decompression process is continued.
> 
> added by analogy to lz4_uncompress_unknownoutputsize(...)
> 
> Signed-off-by: Krzysztof Kolasa <kkolasa@winsoft.pl>
> Tested-by: Alexander Kuleshov <alex0xax@gmail.com>
> ---
>  lib/lz4/lz4_decompress.c | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/lz4/lz4_decompress.c b/lib/lz4/lz4_decompress.c
> index f0f5c5c..8a742b1 100644
> --- a/lib/lz4/lz4_decompress.c
> +++ b/lib/lz4/lz4_decompress.c
> @@ -139,8 +139,12 @@ static int lz4_uncompress(const char *source, char *dest, int osize)
>              /* Error: request to write beyond destination buffer */
>              if (cpy > oend)
>                  goto _output_error;
> +#if LZ4_ARCH64
> +            if ((ref + COPYLENGTH) > oend)
> +#else
>              if ((ref + COPYLENGTH) > oend ||
>                      (op + COPYLENGTH) > oend)
> +#endif
>                  goto _output_error;
>              LZ4_SECURECOPY(ref, op, (oend - COPYLENGTH));
>              while (op < cpy)
> @@ -270,7 +274,13 @@ static int lz4_uncompress_unknownoutputsize(const char *source, char *dest,
>          if (cpy > oend - COPYLENGTH) {
>              if (cpy > oend)
>                  goto _output_error; /* write outside of buf */
> -
> +#if LZ4_ARCH64
> +            if ((ref + COPYLENGTH) > oend)
> +#else
> +            if ((ref + COPYLENGTH) > oend ||
> +                    (op + COPYLENGTH) > oend)
> +#endif
> +                goto _output_error;
>              LZ4_SECURECOPY(ref, op, (oend - COPYLENGTH));
>              while (op < cpy)
>                  *op++ = *ref++;

All whitespace is messed up, and this patch can not be applied :(


  reply	other threads:[~2015-04-03 17:36 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <55114A1D.7030508@winsoft.pl>
2015-03-25  0:44 ` lz4: fix system halted at boot kernel x86_64 compressed lz4 David Sterba
2015-03-25  7:04   ` Krzysztof Kolasa
2015-03-31 15:22     ` Greg KH
2015-04-03 11:33       ` Krzysztof Kolasa
2015-04-03 13:17         ` Greg KH
2015-04-03 13:58           ` Krzysztof Kolasa
2015-04-03 14:17             ` Alexander Kuleshov
2015-04-03 14:23               ` Greg KH
2015-04-03 14:30                 ` Krzysztof Kolasa
2015-04-03 14:44                   ` Greg KH
2015-04-03 15:12                     ` [PATCHv2] " Krzysztof Kolasa
2015-04-03 17:36                       ` Greg KH [this message]
2015-04-03 18:03                         ` Krzysztof Kolasa
2015-04-03 18:06                           ` Greg KH
2015-04-03 18:18                         ` Alexander Kuleshov
2015-04-03 19:01                           ` Greg KH
2015-04-06 10:12 Krzysztof Kolasa

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=20150403173615.GA11233@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=alex0xax@gmail.com \
    --cc=dsterba@suse.cz \
    --cc=kkolasa@winsoft.pl \
    --cc=linux-kernel@vger.kernel.org \
    --cc=tom.yeon@windriver.com \
    /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.