svn commit: r344569 - in head/cddl/contrib/opensolaris: cmd/zfs lib/libzfs/common
Andriy Gapon
avg at FreeBSD.org
Wed Feb 27 07:17:57 UTC 2019
On 26/02/2019 22:58, Cy Schubert wrote:
> I was talking about nested datasets, i.e. tank/freebsd/git/current and
> tank/freebsd/git/ports are four levels deep.
We usually don't call them "nested". In fact, I don't think that we call them
anything special because having N levels deep datasets (N > 1) is just a common
thing. We may call them subordinate or child datasets when mentioning a
relation to a parent dataset.
> In my case the ports
> dataset was mounted while the current dataset was not, though zfs
> believed it was. unmounting the current dataset and remounting it, zfs
> umount .../current; zfs mount .../current worked around the issue.
Are you sure that it was not mounted?
Have you checked that by looking at mount output?
I suspect that it was mounted, just not where you expected and its mount path
was covered by another filesystem.
E.g., lets consider this hypothetical case.
I have two same level datasets tank/freebsd/src and tank/freebsd/sys where
tank/freebsd/src is mounted at /usr/src and tank/freebsd/sys is mounted at
/usr/src/sys (a child directory of /usr/src).
If tank/freebsd/src is mounted first, then everything is okay, tank/freebsd/sys
would be mounted on top of sys directory in tank/freebsd/src.
If, however, tank/freebsd/sys is mounted first (assuming that path /usr/src/sys
exists in a root filesystem), then mounting tank/freebsd/src would simply hide
tank/freebsd/sys "below" it as /usr/src/sys would be sys directory in
tank/freebsd/src.
I guess that this is a kind of problem that could be introduced with parallel
mounting. And I guess that this is a kind of problem that you might actually
have. But it's just a guess.
--
Andriy Gapon
More information about the svn-src-head
mailing list