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