[PATCH] jffs2: allow disabling of compression schemes at runtime

Artem Bityutskiy dedekind1 at gmail.com
Fri Oct 14 10:22:59 EDT 2011


On Fri, 2011-10-14 at 07:14 -0700, Andres Salomon wrote:
> On Fri, 14 Oct 2011 11:50:37 +0300
> Artem Bityutskiy <dedekind1 at gmail.com> wrote:
> 
> > On Mon, 2011-10-03 at 19:16 -0700, Andres Salomon wrote:
> > > Currently jffs2 has compile-time constants (and .config options)
> > > regarding whether or not the various compression/decompression
> > > drivers are built in and enabled.  This is fine for embedded
> > > systems, but it clashes with distribution kernels.  Distro kernels
> > > tend to turn on everything; this causes OpenFirmware to fall
> > > over, as it only supports ZLIB decompression.  Booting a kernel
> > > that has LZO compression enabled, writing to the boot partition,
> > > and then rebooting causes OFW to fail to read the kernel from
> > > the filesystem.  This is because LZO compression has priority
> > > when writing new data to jffs2, if LZO is enabled.
> > > 
> > > To get around that, this patch adds jffs2 module params for each
> > > compressor type that isn't decompression-only.  That means I can run
> > > a kernel that has support for LZO and ZLIB decompression (allowing
> > > me to read LZO data off of the root partition), while  disabling
> > > LZO compression writes (jffs2.disable_lzo=1) so that the boot
> > > partition stays compatible with OFW.
> > > 
> > > Signed-off-by: Andres Salomon <dilinger at queued.net>
> > 
> > You should use mount options instead. Invent nice mount options to
> > configure compression strategy of JFFS2.
> 
> I thought about it, but currently jffs2 doesn't support parsing
> mount options.  It seemed like a lot of extra code for such an obscure
> feature, on a filesystem that's merely in maintenance mode (I don't know
> if anyone else has run into the same issue that I have).  However, I can
> do that if desired.

Yeah, but module parameter for FS is very unusual thing. It should not
be very difficult to introduce an option, really. Mount and remount just
give you the string where you can find every non-standard mount option.
And you can copypaste parts UBIFS code and tweak it.

-- 
Best Regards,
Artem Bityutskiy




More information about the linux-mtd mailing list