On Thu, Sep 26, 2019 at 08:17:12AM -0400, Colin Walters wrote:
On Wed, Sep 25, 2019, at 10:56 AM, Chris Mason wrote:
quoted
The data is verified while being decompressed, but that's a fairly large
fuzzing surface (all of zstd, zlib, and lzo). A lot of people will
correctly argue that we already have that fuzzing surface today, but I'd
rather not make a really easy way to stuff arbitrary bytes through the
kernel decompression code until all the projects involved sign off.
Right. So maybe have this start of as a BTRFS ioctl and require
privileges? I assume that's sufficient for what Omar wants.
That was the first version of this series, but Dave requested that I
make it generic [1].
(Are there actually any other popular Linux filesystems that do transparent compression anyways?)
A scan over the kernel tree shows that a few other filesystems do
compression:
- jffs2
- pstore (if you can call that a filesystem)
- ubifs
- cramfs (read-only)
- erofs (read-only)
- squashfs (read-only)
None of the "mainstream" general-purpose filesystems have support, but
that was also the case for reflink/dedupe before XFS added support.
1: https://lore.kernel.org/linux-fsdevel/20190905021012.GL7777@dread.disaster.area/ (local)