Re: [PATCH v2] fs: Add VirtualBox guest shared folder (vboxsf) support

Amir Goldstein
2018-01-15T20:22:41Z

On Mon, Jan 15, 2018 at 9:41 PM, Hans de Goede <hdegoede@redhat.com> wrote:
> Hi,
>
>
> On 15-01-18 20:32, Amir Goldstein wrote:
>>
>> On Mon, Jan 15, 2018 at 7:51 PM, Hans de Goede <hdegoede@redhat.com>
>> wrote:
>>>
>>> VirtualBox hosts can share folders with guests, this commit adds a
>>> VFS driver implementing the Linux-guest side of this, allowing folders
>>> exported by the host to be mounted under Linux.
>>>
>>> This driver depends on the guest <-> host IPC functions exported by
>>> the vboxguest driver.
>>>
>>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>>> ---
>>> fs/Kconfig | 1 +
>>> fs/Makefile | 1 +
>>> fs/vboxsf/Kconfig | 9 +
>>> fs/vboxsf/Makefile | 3 +
>>> fs/vboxsf/dir.c | 648 +++++++++++++++++++++++++++++
>>> fs/vboxsf/file.c | 416 +++++++++++++++++++
>>> fs/vboxsf/shfl_hostintf.h | 919
>>> +++++++++++++++++++++++++++++++++++++++++
>>> fs/vboxsf/super.c | 430 +++++++++++++++++++
>>> fs/vboxsf/utils.c | 589 ++++++++++++++++++++++++++
>>> fs/vboxsf/vboxsf_wrappers.c | 365 ++++++++++++++++
>>> fs/vboxsf/vboxsf_wrappers.h | 46 +++
>>> fs/vboxsf/vfsmod.h | 104 +++++
>>> include/uapi/linux/vbsfmount.h | 62 +++
>>> 13 files changed, 3593 insertions(+)
>>> create mode 100644 fs/vboxsf/Kconfig
>>> create mode 100644 fs/vboxsf/Makefile
>>> create mode 100644 fs/vboxsf/dir.c
>>> create mode 100644 fs/vboxsf/file.c
>>> create mode 100644 fs/vboxsf/shfl_hostintf.h
>>> create mode 100644 fs/vboxsf/super.c
>>> create mode 100644 fs/vboxsf/utils.c
>>> create mode 100644 fs/vboxsf/vboxsf_wrappers.c
>>> create mode 100644 fs/vboxsf/vboxsf_wrappers.h
>>> create mode 100644 fs/vboxsf/vfsmod.h
>>> create mode 100644 include/uapi/linux/vbsfmount.h
>>
>>
[...]
>>> +++ b/fs/vboxsf/Kconfig
>>> @@ -0,0 +1,9 @@
>>> +config VBOXSF_FS
>>> + tristate "VirtualBox guest shared folder (vboxsf) support"
>>
>>
>>
>> Don't know if you noticed, but calling your filesystem vboxsf
>> is quite odd name among other XXXfs beasts.
>
>
> Yes I noticed, note I'm only the guy pushing this upstream this code
> has a long out-of-tree history. FWIW the sf stand for "shared folder"
>
>> Will it be an option to re-brand this as vboxfs?
>> Even if it is too late or too much of a hustle to change the user visible
>> file_system_type name, I think changing the internal name is worth it.
>
>
> We can quite definitely not change the user-visible name, the mount
> arg changes Christoph Hellwig has requested are tricky enough wrt
> compatibility with the out-of-tree version most users use atm.
>
> The users will need updated userspace tools to deal with the mount arg
> changes, but that is as easy as checking for -EINVAL and trying again
> with the new style string args. But figuring out the right fstype name
> is rather more tricky and the mount binary name has been mount.vboxsf
> for ages... So I would really like to keep the file_system_type name
> as vboxsf, at which point it seems counter-productive to me to rename
> the files / kernel-mode to vboxfs.
>

Well, its up to you and whoever merges this code, but I don't find this
rename counter-productive at all. Isn't the idea behind becoming an in-tree
fs, conforming to the way we do things in-the-tree?

Someone at Oracle once made a decision sometime in the past when that
code was out of tree and not among other fs without conforming to in-tree
standards. That decision affects the user visible fs name and I wasn't
suggesting to change that. That is what MODULE_ALIAS_FS is for.
But there is not really a good reason to carry the baggage of this decision
into the tree.

I don't know, maybe it's just me...

Cheers,
Amir.