Christian Brauner <christian@xxxxxxxxxx> wrote: > Ok, understood. What about passing the different attrs as a struct? > > struct mount_attr { > unsigned int attr_cmd, > unsigned int attr_values, > unsigned int attr_mask, > > }; > > mount_setattr(int dfd, const char *path, unsigned int atflags, > struct mount_attr *attr); > > I find that to be a little cleaner in all honesty. > One could also add a version argument similar to what we currently do > for vfs fcaps so that kernel and userspace can easily navigate > compabitility when a new member gets added or removed in later releases. Yeah, we could do that - it's not like I expect mount_setattr() to have to be particularly performant in the user interface. I would put the attr_cmd in the argument list, probably, so that you can use that to vary the struct in future (say we run out of attribute bits). David