]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
zfs: Add option for forcible unmounting dataset while receiving snapshot.
authoroshogbo <oshogbo@FreeBSD.org>
Sat, 11 Apr 2020 17:54:35 +0000 (17:54 +0000)
committeroshogbo <oshogbo@FreeBSD.org>
Sat, 11 Apr 2020 17:54:35 +0000 (17:54 +0000)
commita4322ce4cd36c93d7c885021ef96c02ef6d81c23
treed86f4ab8d193d4922ae377273be7ba1132f83c12
parenta07811f5b9a49dcfc911f3db870d38c3d1b8a2da
zfs: Add option for forcible unmounting dataset while receiving snapshot.

Currently when the dataset is in use we can't receive snapshots.

zfs send test/1@asd | zfs recv -FM test/2
cannot unmount '/test/2': Device busy

This commits add option 'M' which attempts to forcibly unmount the
dataset.  Thanks to this we can enforce receiving snapshots in a
single step.

Note that this functionality is not supported on Linux because the
VFS will prevent active mounted filesystems from being unmounted,
even with the force option.  This is the intended VFS behavior.

Discussed-with: Pawel Jakub Dawidek <pjd@FreeBSD.org>
Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Allan Jude <allanjude@freebsd.org>
Differential Revision: https://reviews.freebsd.org/D22306

openzfs/zfs@a57d3d45d6efdff935421e2ef3f97e3dc089d93d
cddl/contrib/opensolaris/cmd/zfs/zfs.8
cddl/contrib/opensolaris/cmd/zfs/zfs_main.c
cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h
cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c