freebsd-dev/cddl/contrib/opensolaris
Pawel Jakub Dawidek 497b7ef946 Allow to rename file systems without remounting if it is possible.
It is possible for file systems with 'mountpoint' preperty set to 'legacy'
or 'none' - we don't have to change mount directory for them.
Currently such file systems are unmounted on rename and not even mounted back.

This introduces layering violation, as we need to update 'f_mntfromname'
field in statfs structure related to mountpoint (for the dataset we are
renaming and all its children).

In my opinion it is worth it, as it allow to update FreeBSD in even cleaner
way - in ZFS-only configuration root file system is ZFS file system with
'mountpoint' property set to 'legacy'. If root dataset is named system/rootfs,
we can snapshot it (system/rootfs@upgrade), clone it (system/oldrootfs),
update FreeBSD and if it doesn't boot we can boot back from system/oldrootfs
and rename it back to system/rootfs while it is mounted as /. Before it was
not possible, because unmounting / was not possible.

MFC after:	2 weeks
2011-10-24 00:38:09 +00:00
..
cmd zdb: access dp_free_bpobj only if pool version is >= SPA_VERSION_DEADLISTS 2011-10-21 13:56:17 +00:00
common MFV OpenSolaris DTrace userland bits. 2010-08-02 13:40:53 +00:00
head thr_create: new_thread_ID may be NULL 2011-10-21 13:54:58 +00:00
lib Allow to rename file systems without remounting if it is possible. 2011-10-24 00:38:09 +00:00
tools/ctf MFV OpenSolaris DTrace userland bits. 2010-08-02 13:40:53 +00:00
OPENSOLARIS.LICENSE Now that we have CDDLed code in the tree, add CDDL license. 2007-09-23 07:04:50 +00:00