All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Hazelton <dhazelton@enter.net>
To: Mark Adler <madler@alumni.caltech.edu>
Cc: Satyam Sharma <satyam.sharma@gmail.com>,
	"Michael-Luke Jones" <mlj28@cam.ac.uk>,
	lkml <linux-kernel@vger.kernel.org>,
	dwmw2@infradead.org, jloup@gzip.org
Subject: Re: JFFS2 using 'private' zlib header (was [RFC] LZO de/compression support - take 6)
Date: Thu, 31 May 2007 23:06:12 -0400	[thread overview]
Message-ID: <200705312306.12626.dhazelton@enter.net> (raw)
In-Reply-To: <1084DBE5-D72F-4403-B231-66DA8FE6AC73@alumni.caltech.edu>

On Wednesday 30 May 2007 19:02:28 Mark Adler wrote:
> On May 30, 2007, at 6:30 AM, Satyam Sharma wrote:
> > [1] For your reference, here is the user code in question:
>
> ...
>
> >        if (srclen > 2 && !(data_in[1] & PRESET_DICT) &&
> > 	    ((data_in[0] & 0x0f) == Z_DEFLATED) &&
> > 	    !(((data_in[0]<<8) + data_in[1]) % 31)) {
>
> The funny thing here is that the author felt compelled to use a
> #defined constant for the dictionary bit (PRESET_DICT), but had no
> problem with a numeric constant to isolate the compression method
> (0x0f), or for that matter extracting the window bits from the
> header.  The easy way to avoid the use of an internal zlib header
> file here is to simply replace PRESET_DICT with 0x20.  That constant
> will never change -- it is part of the definition of the zlib header
> in RFC 1950.

If there is no objection, I'll put together a patch that changes the use in 
JFFS2 into a "magic number", complete with documentation on it, and also 
moves all of the zlib stuff into a single directory.

> The slightly more involved patch to avoid the problem is to let
> inflate() do all that work for you, including the integrity check on
> the zlib header (% 31).  Also this corrects an error in the original
> code, which is that it continues to try to decompress after finding
> that a dictionary is needed or that the zlib header is invalid.  In
> this version, a bad header simply returns an error:
>

Does anyone know if doing as Mark suggests would negatively impact the 
performance of JFFS2 to such a degree that it could be considered a 
regression? I, unfortunately, don't have the hardware to properly test the 
code. And, at this point in time, I also don't have enough familiarity with 
the JFFS2 code to make such a change myself. 

DRH


  parent reply	other threads:[~2007-06-01  3:06 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-28 14:34 [RFC] LZO de/compression support - take 6 Nitin Gupta
2007-05-28 14:40 ` Nitin Gupta
2007-05-28 14:49   ` Daniel Hazelton
2007-05-28 15:06     ` Nitin Gupta
2007-05-28 15:43       ` Adrian Bunk
2007-05-28 16:03         ` Nitin Gupta
2007-05-28 17:11           ` Adrian Bunk
2007-05-28 19:59             ` Daniel Hazelton
2007-05-28 20:18             ` Daniel Hazelton
2007-05-28 20:52               ` Daniel Hazelton
2007-05-29  5:55             ` Nitin Gupta
2007-05-29  8:08             ` Michael-Luke Jones
2007-05-29 11:40               ` Adrian Bunk
2007-05-29 12:03                 ` Nitin Gupta
2007-05-29 13:13                   ` Daniel Hazelton
2007-05-29 21:10             ` Jan Engelhardt
2007-05-29 21:26               ` Adrian Bunk
2007-05-30  5:31                 ` Nitin Gupta
2007-05-30 13:56                   ` Johannes Stezenbach
2007-05-30 14:24                     ` Satyam Sharma
2007-05-28 15:30   ` Adrian Bunk
2007-05-28 15:47     ` Nitin Gupta
2007-05-28 15:55       ` Daniel Hazelton
2007-05-28 17:01         ` Adrian Bunk
2007-05-28 19:51           ` Daniel Hazelton
2007-05-28 15:49     ` Daniel Hazelton
2007-05-28 22:57   ` Bret Towe
2007-05-29  5:48     ` Nitin Gupta
2007-05-29 13:09       ` Daniel Hazelton
2007-05-28 22:53 ` Bret Towe
2007-05-28 22:58   ` Bret Towe
2007-05-29  5:58   ` Nitin Gupta
2007-05-29 20:14     ` Daniel Hazelton
2007-05-29 20:33       ` Daniel Hazelton
2007-05-29 21:48         ` Daniel Hazelton
2007-05-29 23:32     ` Daniel Hazelton
2007-05-30  5:19       ` Nitin Gupta
2007-05-29  8:17 ` Makefile question (was [RFC] LZO de/compression support - take 6) Michael-Luke Jones
2007-05-29 10:41   ` Satyam Sharma
2007-05-29 10:51     ` Michael-Luke Jones
2007-05-29 11:27       ` Satyam Sharma
2007-05-29 13:33         ` JFFS2 using 'private' zlib header " Michael-Luke Jones
2007-05-29 13:43           ` Daniel Hazelton
2007-05-29 15:15             ` Satyam Sharma
2007-05-29 16:20               ` Daniel Hazelton
2007-05-30  5:31               ` Mark Adler
2007-05-30 13:05                 ` Daniel Hazelton
2007-05-30 13:30                 ` Satyam Sharma
2007-05-30 23:02                   ` Mark Adler
2007-05-30 23:26                     ` Daniel Hazelton
2007-06-01  3:06                     ` Daniel Hazelton [this message]
2007-06-01 17:24                       ` Satyam Sharma
2007-05-30 13:41               ` Artem Bityutskiy
2007-05-30 15:46                 ` Artem Bityutskiy
2007-05-30 16:12                   ` Satyam Sharma
2007-05-30 16:43                     ` Artem Bityutskiy
2007-05-29 20:48 ` [RFC] LZO de/compression support - take 6 Jan Engelhardt
2007-05-30  5:54   ` Nitin Gupta
2007-05-30  8:31     ` Jan Engelhardt
2007-05-30 10:47       ` Nitin Gupta
2007-05-31 12:34 ` Nitin Gupta
2007-05-31 18:21   ` Satyam Sharma

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=200705312306.12626.dhazelton@enter.net \
    --to=dhazelton@enter.net \
    --cc=dwmw2@infradead.org \
    --cc=jloup@gzip.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=madler@alumni.caltech.edu \
    --cc=mlj28@cam.ac.uk \
    --cc=satyam.sharma@gmail.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.