Deleted Added
full compact
libzfs_dataset.c (307108) libzfs_dataset.c (310068)
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE

--- 1601 unchanged lines hidden (view full) ---

1610 elem != NULL;
1611 elem = nvlist_next_nvpair(nvl, elem)) {
1612
1613 zfs_prop_t prop = zfs_name_to_prop(nvpair_name(elem));
1614
1615 assert(cl_idx < nvl_len);
1616 /*
1617 * We don't want to unmount & remount the dataset when changing
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE

--- 1601 unchanged lines hidden (view full) ---

1610 elem != NULL;
1611 elem = nvlist_next_nvpair(nvl, elem)) {
1612
1613 zfs_prop_t prop = zfs_name_to_prop(nvpair_name(elem));
1614
1615 assert(cl_idx < nvl_len);
1616 /*
1617 * We don't want to unmount & remount the dataset when changing
1618 * its canmount property. We only use the changelist logic to
1619 * unmount when setting canmount=off for a mounted filesystem
1620 * or when setting canmount=on for an unmounted filesystem.
1621 * For all other changes to canmount property the filesystem
1622 * remains the same.
1618 * its canmount property to 'on' or 'noauto'. We only use
1619 * the changelist logic to unmount when setting canmount=off.
1623 */
1624 if (prop != ZFS_PROP_CANMOUNT ||
1625 (fnvpair_value_uint64(elem) == ZFS_CANMOUNT_OFF &&
1620 */
1621 if (prop != ZFS_PROP_CANMOUNT ||
1622 (fnvpair_value_uint64(elem) == ZFS_CANMOUNT_OFF &&
1626 zfs_is_mounted(zhp, NULL)) ||
1627 (fnvpair_value_uint64(elem) == ZFS_CANMOUNT_ON &&
1628 !zfs_is_mounted(zhp, NULL))) {
1623 zfs_is_mounted(zhp, NULL))) {
1629 cls[cl_idx] = changelist_gather(zhp, prop, 0, 0);
1630 if (cls[cl_idx] == NULL)
1631 goto error;
1632 }
1633
1634 if (prop == ZFS_PROP_MOUNTPOINT &&
1635 changelist_haszonedchild(cls[cl_idx])) {
1636 zfs_error_aux(hdl, dgettext(TEXT_DOMAIN,

--- 3266 unchanged lines hidden ---
1624 cls[cl_idx] = changelist_gather(zhp, prop, 0, 0);
1625 if (cls[cl_idx] == NULL)
1626 goto error;
1627 }
1628
1629 if (prop == ZFS_PROP_MOUNTPOINT &&
1630 changelist_haszonedchild(cls[cl_idx])) {
1631 zfs_error_aux(hdl, dgettext(TEXT_DOMAIN,

--- 3266 unchanged lines hidden ---