Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Nov 2018 15:38:13 +0000
From:      Rick Macklem <rmacklem@uoguelph.ca>
To:        Julian Elischer <julian@freebsd.org>, Andriy Gapon <avg@FreeBSD.org>, Konstantin Belousov <kostikbel@gmail.com>
Cc:        FreeBSD Filesystems <freebsd-fs@freebsd.org>
Subject:   Re: How to fill in the fsid for file systems?
Message-ID:  <YTOPR0101MB1162A8CA4B3AAF230E73158DDDC90@YTOPR0101MB1162.CANPRD01.PROD.OUTLOOK.COM>
In-Reply-To: <c98b999c-c4b8-55fe-adef-ac53e439487b@freebsd.org>
References:  <YTOPR0101MB11620BAF0E206EE36E927A5ADDF30@YTOPR0101MB1162.CANPRD01.PROD.OUTLOOK.COM> <20181030012240.GM5335@kib.kiev.ua> <YTOPR0101MB11621427AF47133A93311E16DDCD0@YTOPR0101MB1162.CANPRD01.PROD.OUTLOOK.COM> <e7813a64-59c2-67a1-3471-b32a6ca42ef8@FreeBSD.org> <YTOPR0101MB116207BA89FB66EE9B1AAF01DDCD0@YTOPR0101MB1162.CANPRD01.PROD.OUTLOOK.COM> <a831d660-1ed9-ef21-f457-8e1e986b96f2@FreeBSD.org> <YTOPR0101MB11621C0D5F4F4D9BED169110DDCF0@YTOPR0101MB1162.CANPRD01.PROD.OUTLOOK.COM>, <c98b999c-c4b8-55fe-adef-ac53e439487b@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Julian Elischer wrote:
[stuff snipped]
>Rick Macklem wrote:
>>
>> Maybe someone can explain when it would be useful for FFS (or not)?
>SO lets' just make the usage model clear:
>I believe that what Josh needs is to have a  two High availability
>servers viewing a single
>(cloud based) filesystem, export the same FSID so that when one takes
>over for the other
>the clients don't notice.
Well, for UFS/FFS, if it is the same physical storage or the file system wa=
s cloned
via a block for block copy (like using dd(1)), then it shouldn't be a probl=
em,
since the fsid comes out of the superblock.

That leaves ZFS, which is what I was asking.
I don't understand the ZFS code well enough to understand  what
dmu_objset_fsid_guid() is doing to get the fsid. I also don't know if the v=
alue
changes for snaphots of the same file system?
- If it does ever change, then that is the usage case for this option.

I suppose there is nullfs. It uses vfs_getnewfsid() to fill in the fsid, so=
 if a nullfs
mount were exported instead of the underlying UFS or ZFS file system, this
option would be needed. (I think it would be wiser to just avoid exporting
the nullfs mount, but some might have a use of this?).

> The second usage is that over a reboot
>an NFS client may not notice (if there were no transactions while the
>system was down).
>Even if for some reason the file systems came up in a different order..
This should be fine for all the file system types (UFS, cd9660, msdosfs) th=
at I
have checked, except maybe ZFS. Other than UFS, they mostly use vfs_getnewf=
sid(),
which should return the same value for a given file system type.
(I don't think anyone really cares about cd9660, msdosfs w.r.t. this anyhow=
.)

Again, ZFS is the one I don't know enough about.

So, the question really was "what does ZFS do to generate the fsid?".

Now, Panzura does something else w.r.t. fsid, but that isn't a generic Free=
BSD
issue.

rick




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?YTOPR0101MB1162A8CA4B3AAF230E73158DDDC90>