public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Don't understand comment in arch/x86/boot/compressed/misc.c
@ 2011-05-11 22:40 Rob Landley
  2011-05-12  0:12 ` Eric W. Biederman
  0 siblings, 1 reply; 3+ messages in thread
From: Rob Landley @ 2011-05-11 22:40 UTC (permalink / raw)
  To: Eric W. Biederman, LKML, H. Peter Anvin

It talks about when decompression in place is safe to do:

 * Getting to provable safe in place decompression is hard.
 * Worst case behaviours need to be analyzed.
...
 * The buffer for decompression in place is the length of the
 * uncompressed data, plus a small amount extra to keep the algorithm safe.
 * The compressed data is placed at the end of the buffer.  The output
 * pointer is placed at the start of the buffer and the input pointer
 * is placed where the compressed data starts.  Problems will occur
 * when the output pointer overruns the input pointer.
 *
 * The output pointer can only overrun the input pointer if the input
 * pointer is moving faster than the output pointer.  A condition only
 * triggered by data whose compressed form is larger than the uncompressed
 * form.

You have an output pointer at a lower address catching up to an input
pointer at a higher address.  If the input pointer is moving FASTER
than the output pointer, wouldn't the gap between them grow rather
than shrink?

The concern seems to be about COMPRESSING in place, rather than
decompressing...?

Rob

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-05-13  2:37 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-11 22:40 Don't understand comment in arch/x86/boot/compressed/misc.c Rob Landley
2011-05-12  0:12 ` Eric W. Biederman
2011-05-13  2:37   ` Rob Landley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox