On Fri, Jul 27, 2018 at 12:27 PM, Andy Lutomirski <l...@amacapital.net> wrote: > > >> On Jul 27, 2018, at 10:34 AM, David Howells <dhowe...@redhat.com> wrote: >> >> Provide a system call by which a filesystem opened with fsopen() and >> configured by a series of writes can be mounted: >> >> int ret = fsmount(int fsfd, unsigned int flags, >> unsigned int ms_flags); >> >> where fsfd is the file descriptor returned by fsopen(). flags can be 0 or >> FSMOUNT_CLOEXEC. ms_flags is a bitwise-OR of the following flags: > > I have a potentially silly objection. For the old timers, “mount” means to > stick a reel of tape or some similar object onto a reader, which seems to > imply that “mount” means to start up the filesystem. For younguns, this > meaning is probably lost, and the more obvious meaning is to “mount” it into > some location in the VFS hierarchy a la vfsmount. The patch description > doesn’t disambiguate it, and obviously people used to mount(2)/mount(8) are > just likely to be confused. > > At the very least, your description should make it absolutely clear what you > mean. Even better IMO would be to drop the use of the word “mount” entirely > and maybe rename the syscall. > > From a very brief reading, I think you are giving it the meaning that would > be implied by fsstart(2). >
After further reading, maybe what you actually mean is: int mfd = fsmount(...); where you pass in an fscontext fd and get out an fd referring to the root of the filesystem? In this case, maybe fs_open_root(2) would be a better name. This *definitely* needs to be clearer in the description.