mirror_zfs/cmd/zfs
Mariusz Zaborski a57d3d45d6
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.

Test cases were added to verify the expected behavior based on
the platform.

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>
External-issue: https://reviews.freebsd.org/D22306
Closes #9904
2020-03-17 10:08:32 -07:00
..
.gitignore Add .gitignore files to exclude build products 2010-01-08 11:35:17 -08:00
Makefile.am Add FreeBSD jail support hooks 2019-12-11 11:58:37 -08:00
zfs_iter.c Fix dataset name comparison in zfs_compare() 2019-05-08 16:42:39 -07:00
zfs_iter.h Illumos #2583 2013-11-21 11:13:53 -08:00
zfs_main.c Add option for forcible unmounting dataset while receiving snapshot. 2020-03-17 10:08:32 -07:00
zfs_project.c Misc fixes and cleanup for project quota 2018-03-05 12:56:27 -08:00
zfs_projectutil.h Project Quota on ZFS 2018-02-13 14:54:54 -08:00
zfs_util.h Fix static data to link with -fno-common 2020-02-06 09:25:29 -08:00