Re: [PATCH 5/6] fsmount: do not use legacy MS_ flags

From: David Howells
Date: Mon Sep 24 2018 - 02:50:51 EST


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