Re: Streams support in Linux

Theodore Y. Ts'o
2018-08-28T04:34:51Z

On Mon, Aug 27, 2018 at 11:21:43AM -0700, Matthew Wilcox wrote:
> On Mon, Aug 27, 2018 at 10:05:31AM -0700, Jeremy Allison wrote:
> > I can't think of a *single* case where a stream adds more
> > utility than an EA used in the same case.
> >
> > I don't want theoretical "well it would be nice if..",
> > I want clear "we couldn't have done it any other way"
> > kinds of things.
>
> I started this thread with such an example. The fs-verity patch proposed
> wants to store hundreds of megabytes of data associated with a particular
> file. The current solution is to append it to the end of the data then
> magic to set i_size lower but not remove the data from the file like a
> truncate would. Then more magic to read that data.

Sure, but so what? The Merkle Tree only needs to be read by the
kernel, and we only need to install the fs-verity data once. And
putting it at the end of the file works just fine. Theoretically we
could do it other ways, but this is almost certainly easier and
cleaner than if we had to open a streams file from kernel code.

Doing it using streams would actually be *harder* and is only of use
for people who like more structured designs. But to be clear, this is
*not* something I'm asking for as one of the original designers of
fs-verity.

- Ted