Re: [RFC/PATCH 0/2] ext4: Transparent Decompression Support

From: JÃrn Engel
Date: Sat Aug 03 2013 - 23:53:51 EST


On Sat, 3 August 2013 20:33:16 -0400, Theodore Ts'o wrote:
>
> P.P.S. At least in theory, nothing of what I've described here has to
> be ext4 specific. We could implement this in the VFS layer, at which
> point not only ext4 would benefit, but also btrfs, xfs, f2fs, etc.

Except for an inode bit that needs to be stored in the filesystem,
agreed. The ugliness I see is in detecting how to treat the
filesystem at hand.

Filesystems with mandatory compression (jffs2, ubifs,...):
- Just write the file, nothing to do.
Filesystems with optional compression (logfs, ext2compr,...):
- You may or may not want to chattr between file creation and writing
the payload.
Filesystems without compression (ext[234], xfs,...):
- Just write the file, nothing can be done.
- Alternatively fall back to a userspace version.
Filesystems with optional uncompression (what is being proposed):
- Write the file in compressed form, close, chattr.

I would like to see the compression side done in the kernel as well.
Then we can chattr right after creat() and, if that fails, either
proceed anyway or go to a userspace fallback. All decisions can be
made early on and we don't have to share the format with lots of
userspace.

Sure, we still have to share the format with fsck and similar
filesystem tools. But not with installers.

JÃrn

--
Man darf nicht das, was uns unwahrscheinlich und unnatÃrlich erscheint,
mit dem verwechseln, was absolut unmÃglich ist.
-- Carl Friedrich GauÃ
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/