diff options
author | Martin Matuska <mm@FreeBSD.org> | 2012-06-15 07:38:21 +0000 |
---|---|---|
committer | Martin Matuska <mm@FreeBSD.org> | 2012-06-15 07:38:21 +0000 |
commit | 153e430149ed4479fb833482364d2e8a373163f2 (patch) | |
tree | fcf8860b9c05e1e94b11fd87f4698305a3575375 /cddl | |
parent | aa0c93a5ca336d242063dc30cbde0a1bc7d04b1e (diff) | |
download | src-test2-153e430149ed4479fb833482364d2e8a373163f2.tar.gz src-test2-153e430149ed4479fb833482364d2e8a373163f2.zip |
Notes
Diffstat (limited to 'cddl')
-rw-r--r-- | cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c b/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c index fcd43a03c63b..1d81f91f5a35 100644 --- a/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c +++ b/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c @@ -1485,11 +1485,13 @@ zfs_prop_set(zfs_handle_t *zhp, const char *propname, const char *propval) /* * If the dataset's canmount property is being set to noauto, + * or being set to on and the dataset is already mounted, * then we want to prevent unmounting & remounting it. */ do_prefix = !((prop == ZFS_PROP_CANMOUNT) && (zprop_string_to_index(prop, propval, &idx, - ZFS_TYPE_DATASET) == 0) && (idx == ZFS_CANMOUNT_NOAUTO)); + ZFS_TYPE_DATASET) == 0) && (idx == ZFS_CANMOUNT_NOAUTO || + (idx == ZFS_CANMOUNT_ON && zfs_is_mounted(zhp, NULL)))); if (do_prefix && (ret = changelist_prefix(cl)) != 0) goto error; |