Since there's no standard VFS way to get the supported mount options from userspace, I thought I would do what Ronnie suggested and export them from a cifs /proc file. That's the only change since v1, in the 4th patch. David, maybe this can give your arguments for the need for fsinfo() if we end up using this in cifs-utils. I have added some dumb code in userspace to parse it and see if the option exists and what type it is. This removes the requirement of having to keep cifs-utils and kernel updated at the same time to use new options. Previous intro ======================================================================= I have some code to use the new mount API from user space. The kernel changes are just making the code use the fs_context logging feature. The sample userspace prog (fsopen.c attached) is just a PoC showing how mounting is done and how the mount errors are read. If you change the prog to use a wrong version for example (vers=4.0) you get this: $ gcc -o fsopen fsopen.c $ ./fsopen fsconfig(sfd, FSCONFIG_SET_STRING, "vers", "4.0", 0): Invalid argument kernel mount errors: e Unknown vers= option specified: 4.0 The pros are that we process one option at a time and we can fail early with verbose, helpful messages to the user. =======================================================================