mbox series

[0/3] ceph: use new mount device syntax

Message ID 20210604050512.552649-1-vshankar@redhat.com (mailing list archive)
Headers show
Series ceph: use new mount device syntax | expand

Message

Venky Shankar June 4, 2021, 5:05 a.m. UTC
This series introduces changes Ceph File System mount device string.
Old mount device syntax (source) has the following problems:

mounts to the same cluster but with different fsnames
and/or creds have identical device string which can
confuse xfstests.

Userspace mount helper tool resolves monitor addresses
and fill in mon addrs automatically, but that means the
device shown in /proc/mounts is different than what was
used for mounting.

New device syntax is as follows:

  cephuser@mycephfs2=/path

Note, there is no "monitor address" in the device string.
That gets passed in as mount option. This keeps the device
string same when monitor addresses change (on remounts).

Also note that the userspace mount helper tool is backward
compatible. I.e., the mount helper will fallback to using
old syntax after trying to mount with the new syntax.

The user space mount helper changes are here:

    http://github.com/ceph/ceph/pull/41334


Venky Shankar (3):
  ceph: new device mount syntax
  ceph: record updated mon_addr on remount
  doc: document new CephFS mount device syntax

 Documentation/filesystems/ceph.rst | 16 +++++--
 fs/ceph/super.c                    | 75 +++++++++++++++++++++---------
 fs/ceph/super.h                    |  1 +
 3 files changed, 67 insertions(+), 25 deletions(-)

Comments

Jeff Layton June 4, 2021, 11:21 a.m. UTC | #1
On Fri, 2021-06-04 at 10:35 +0530, Venky Shankar wrote:
> This series introduces changes Ceph File System mount device string.
> Old mount device syntax (source) has the following problems:
> 
> mounts to the same cluster but with different fsnames
> and/or creds have identical device string which can
> confuse xfstests.
> 
> Userspace mount helper tool resolves monitor addresses
> and fill in mon addrs automatically, but that means the
> device shown in /proc/mounts is different than what was
> used for mounting.
> 
> New device syntax is as follows:
> 
>   cephuser@mycephfs2=/path
> 
> Note, there is no "monitor address" in the device string.
> That gets passed in as mount option. This keeps the device
> string same when monitor addresses change (on remounts).
> 
> Also note that the userspace mount helper tool is backward
> compatible. I.e., the mount helper will fallback to using
> old syntax after trying to mount with the new syntax.
> 
> The user space mount helper changes are here:
> 
>     http://github.com/ceph/ceph/pull/41334
> 
> 
> Venky Shankar (3):
>   ceph: new device mount syntax
>   ceph: record updated mon_addr on remount
>   doc: document new CephFS mount device syntax
> 
>  Documentation/filesystems/ceph.rst | 16 +++++--
>  fs/ceph/super.c                    | 75 +++++++++++++++++++++---------
>  fs/ceph/super.h                    |  1 +
>  3 files changed, 67 insertions(+), 25 deletions(-)
> 

Nice work, Venky!

This looks good at first glance. The only real issue I see is that we
can't just deprecate the mds_namespace option. I think we have to keep
that around for now for the case of a legacy mount helper.

I'll plan to pull down this and your userland patches and give them a
spin later today.

Cheers,