Re: [RFC PATCH 0/10] ftrfs: Fault-Tolerant Radiation-Robust Filesystem

From: Darrick J. Wong

Date: Mon Apr 13 2026 - 14:12:03 EST


On Mon, Apr 13, 2026 at 04:06:07PM +0100, Matthew Wilcox wrote:
> On Mon, Apr 13, 2026 at 04:23:46PM +0200, Aurelien DESBRIERES wrote:
> > FTRFS was originally described in:
> >
> > Fuchs, C.M., Langer, M., Trinitis, C. (2015).
> > FTRFS: A Fault-Tolerant Radiation-Robust Filesystem for Space Use.
> > ARCS 2015, LNCS vol 9017, Springer.
> > https://doi.org/10.1007/978-3-319-16086-3_8
>
> Might be nice to link to a non-paywalled copy of that paper, eg:
>
> https://www.cfuchs.net/chris/publication-list/ARCS2015/FTRFS.pdf
>
> > This implementation is an independent open-source realization of the
> > concepts described in that paper, developed for the Linux kernel.
>
> Can I ask why? Is the original code not available or too ugly?
>
> > On-disk layout:
> >
> > Block 0 : superblock (magic 0x46545246, CRC32-protected)
> > Block 1..N : inode table (128 bytes/inode, CRC32 per inode)
> > Block N+1..end : data blocks (CRC32 + RS FEC per block)
> >
> > Inodes use direct addressing (12 direct block pointers) plus single
> > and double indirection. Directory entries are fixed-size (268 bytes)
> > stored in direct blocks.
>
> This is very old-school. That may be appropriate for the intended
> use-case, but it ignores about five decades of filesystem research.

Why not add FEC to btrfs instead? Then you can concentrate on getting
the IO paths correct, instead of burning time on ensuring that you've
implemented all the other posix filesystemisms correctly.

--D