Re: [PATCH v2 01/12] fs-verity: add a documentation file

Theodore Y. Ts'o
2018-12-21T16:28:33Z

On Fri, Dec 21, 2018 at 07:53:54AM -0800, Matthew Wilcox wrote:
> In contrast to "we'll just fix it up later" (which usually applies
> to in-kernel interfaces), we have a policy of not breaking userspace,
> so accepting this interface means setting it in stone. We should get
> it right.

I'm not convinced it's a "fix", but my point is that if later on you
want to add extra complexity transforming

ioctl(fd, FS_IOC_ENABLE_VERITY);

so it does the equivalent of

ioctl(fd, FS_IOC_ENABLE_VERITY_NOW_WITH_EXTRA_USELESS_COMPLEXITY,
fd, sizeof_data, sizeof_verity_data);

it adds essentially no complexity to provide this backwards
compatibility. But if we need to implement
FS_IOC_ENABLE_VERITY_NOW_WITH_EXTRA_USELESS_COMPLEXITY *now*, we gain
nothing, other than pushing back when fsverity lands upstream. We'd
have to provide that backwards compatibility interface anyway, since
there are a lot of users for that existing interface.

So why?

- Ted