Author: will
Date: Wed Jan 21 19:20:36 2015
New Revision: 277501
URL: https://svnweb.freebsd.org/changeset/base/277501

Log:
  Eliminate an #ifdef illumos for zfs_ioc_rename().
  
  Since allow_mounted is a FreeBSD-specific change, default to B_TRUE, then
  locally check for the magic bit.  Unconditionally check allow_mounted below.
  Convert the setting of allow_mounted to an explicit boolean.
  
  MFC after:    1 week
  Sponsored by: Spectra Logic
  MFSpectraBSD: 672578 (in part) on 2013/07/19

Modified:
  head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c

Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c     Wed Jan 
21 19:11:15 2015        (r277500)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c     Wed Jan 
21 19:20:36 2015        (r277501)
@@ -3751,10 +3751,12 @@ static int
 zfs_ioc_rename(zfs_cmd_t *zc)
 {
        boolean_t recursive = zc->zc_cookie & 1;
+       char *at;
+       boolean_t allow_mounted = B_TRUE;
+
 #ifdef __FreeBSD__
-       boolean_t allow_mounted = zc->zc_cookie & 2;
+       allow_mounted = (zc->zc_cookie & 2) != 0;
 #endif
-       char *at;
 
        zc->zc_value[sizeof (zc->zc_value) - 1] = '\0';
        if (dataset_namecheck(zc->zc_value, NULL, NULL) != 0 ||
@@ -3769,11 +3771,7 @@ zfs_ioc_rename(zfs_cmd_t *zc)
                if (strncmp(zc->zc_name, zc->zc_value, at - zc->zc_name + 1))
                        return (SET_ERROR(EXDEV));
                *at = '\0';
-#ifdef illumos
-               if (zc->zc_objset_type == DMU_OST_ZFS) {
-#else
                if (zc->zc_objset_type == DMU_OST_ZFS && allow_mounted) {
-#endif
                        error = dmu_objset_find(zc->zc_name,
                            recursive_unmount, at + 1,
                            recursive ? DS_FIND_CHILDREN : 0);
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to