Lines Matching refs:error

550 	int error;  in zfs_secpolicy_write_perms_ds()  local
552 error = zfs_dozonecheck_ds(name, ds, cr); in zfs_secpolicy_write_perms_ds()
553 if (error == 0) { in zfs_secpolicy_write_perms_ds()
554 error = secpolicy_zfs(cr); in zfs_secpolicy_write_perms_ds()
555 if (error != 0) in zfs_secpolicy_write_perms_ds()
556 error = dsl_deleg_access_impl(ds, perm, cr); in zfs_secpolicy_write_perms_ds()
558 return (error); in zfs_secpolicy_write_perms_ds()
564 int error; in zfs_secpolicy_write_perms() local
576 error = dsl_pool_hold(name, FTAG, &dp); in zfs_secpolicy_write_perms()
577 if (error != 0) in zfs_secpolicy_write_perms()
578 return (error); in zfs_secpolicy_write_perms()
580 error = dsl_dataset_hold(dp, name, FTAG, &ds); in zfs_secpolicy_write_perms()
581 if (error != 0) { in zfs_secpolicy_write_perms()
583 return (error); in zfs_secpolicy_write_perms()
586 error = zfs_secpolicy_write_perms_ds(name, ds, perm, cr); in zfs_secpolicy_write_perms()
590 return (error); in zfs_secpolicy_write_perms()
606 int error; in zfs_set_slabel_policy() local
609 error = dsl_prop_get(name, zfs_prop_to_name(ZFS_PROP_MLSLABEL), in zfs_set_slabel_policy()
611 if (error != 0) in zfs_set_slabel_policy()
659 error = dmu_objset_own(name, DMU_OST_ZFS, B_TRUE, B_TRUE, in zfs_set_slabel_policy()
661 if (error != 0) in zfs_set_slabel_policy()
748 int error; in zfs_secpolicy_set_fsacl() local
750 error = zfs_dozonecheck(zc->zc_name, cr); in zfs_secpolicy_set_fsacl()
751 if (error != 0) in zfs_secpolicy_set_fsacl()
752 return (error); in zfs_secpolicy_set_fsacl()
776 int error; in zfs_secpolicy_send() local
785 error = dsl_pool_hold(zc->zc_name, FTAG, &dp); in zfs_secpolicy_send()
786 if (error != 0) in zfs_secpolicy_send()
787 return (error); in zfs_secpolicy_send()
789 error = dsl_dataset_hold_obj(dp, zc->zc_sendobj, FTAG, &ds); in zfs_secpolicy_send()
790 if (error != 0) { in zfs_secpolicy_send()
792 return (error); in zfs_secpolicy_send()
797 error = zfs_secpolicy_write_perms_ds(zc->zc_name, ds, in zfs_secpolicy_send()
802 return (error); in zfs_secpolicy_send()
818 int error; in zfs_secpolicy_deleg_share() local
820 if ((error = lookupname(zc->zc_value, UIO_SYSSPACE, in zfs_secpolicy_deleg_share()
822 return (error); in zfs_secpolicy_deleg_share()
883 int error; in zfs_secpolicy_destroy_perms() local
885 if ((error = zfs_secpolicy_write_perms(name, in zfs_secpolicy_destroy_perms()
887 return (error); in zfs_secpolicy_destroy_perms()
909 int error = 0; in zfs_secpolicy_destroy_snaps() local
916 error = zfs_secpolicy_destroy_perms(nvpair_name(pair), cr); in zfs_secpolicy_destroy_snaps()
917 if (error == ENOENT) { in zfs_secpolicy_destroy_snaps()
927 error = 0; in zfs_secpolicy_destroy_snaps()
929 if (error != 0) in zfs_secpolicy_destroy_snaps()
933 return (error); in zfs_secpolicy_destroy_snaps()
940 int error; in zfs_secpolicy_rename_perms() local
942 if ((error = zfs_secpolicy_write_perms(from, in zfs_secpolicy_rename_perms()
944 return (error); in zfs_secpolicy_rename_perms()
946 if ((error = zfs_secpolicy_write_perms(from, in zfs_secpolicy_rename_perms()
948 return (error); in zfs_secpolicy_rename_perms()
950 if ((error = zfs_get_parent(to, parentname, in zfs_secpolicy_rename_perms()
952 return (error); in zfs_secpolicy_rename_perms()
954 if ((error = zfs_secpolicy_write_perms(parentname, in zfs_secpolicy_rename_perms()
956 return (error); in zfs_secpolicy_rename_perms()
958 if ((error = zfs_secpolicy_write_perms(parentname, in zfs_secpolicy_rename_perms()
960 return (error); in zfs_secpolicy_rename_perms()
962 return (error); in zfs_secpolicy_rename_perms()
978 int error; in zfs_secpolicy_promote() local
980 error = zfs_secpolicy_write_perms(zc->zc_name, in zfs_secpolicy_promote()
982 if (error != 0) in zfs_secpolicy_promote()
983 return (error); in zfs_secpolicy_promote()
985 error = dsl_pool_hold(zc->zc_name, FTAG, &dp); in zfs_secpolicy_promote()
986 if (error != 0) in zfs_secpolicy_promote()
987 return (error); in zfs_secpolicy_promote()
989 error = dsl_dataset_hold(dp, zc->zc_name, FTAG, &clone); in zfs_secpolicy_promote()
991 if (error == 0) { in zfs_secpolicy_promote()
997 error = dsl_dataset_hold_obj(dd->dd_pool, in zfs_secpolicy_promote()
999 if (error != 0) { in zfs_secpolicy_promote()
1002 return (error); in zfs_secpolicy_promote()
1005 error = zfs_secpolicy_write_perms_ds(zc->zc_name, clone, in zfs_secpolicy_promote()
1009 if (error == 0) { in zfs_secpolicy_promote()
1010 error = zfs_secpolicy_write_perms_ds(parentname, origin, in zfs_secpolicy_promote()
1017 return (error); in zfs_secpolicy_promote()
1024 int error; in zfs_secpolicy_recv() local
1026 if ((error = zfs_secpolicy_write_perms(zc->zc_name, in zfs_secpolicy_recv()
1028 return (error); in zfs_secpolicy_recv()
1030 if ((error = zfs_secpolicy_write_perms(zc->zc_name, in zfs_secpolicy_recv()
1032 return (error); in zfs_secpolicy_recv()
1053 int error = 0; in zfs_secpolicy_snapshot() local
1064 error = SET_ERROR(EINVAL); in zfs_secpolicy_snapshot()
1068 error = zfs_secpolicy_snapshot_perms(name, cr); in zfs_secpolicy_snapshot()
1070 if (error != 0) in zfs_secpolicy_snapshot()
1073 return (error); in zfs_secpolicy_snapshot()
1083 int error = 0; in zfs_secpolicy_bookmark() local
1091 error = SET_ERROR(EINVAL); in zfs_secpolicy_bookmark()
1095 error = zfs_secpolicy_write_perms(name, in zfs_secpolicy_bookmark()
1098 if (error != 0) in zfs_secpolicy_bookmark()
1101 return (error); in zfs_secpolicy_bookmark()
1117 int error = 0; in zfs_secpolicy_destroy_bookmarks() local
1126 error = SET_ERROR(EINVAL); in zfs_secpolicy_destroy_bookmarks()
1131 error = zfs_secpolicy_write_perms(name, in zfs_secpolicy_destroy_bookmarks()
1134 if (error == ENOENT) { in zfs_secpolicy_destroy_bookmarks()
1144 error = 0; in zfs_secpolicy_destroy_bookmarks()
1146 if (error != 0) in zfs_secpolicy_destroy_bookmarks()
1150 return (error); in zfs_secpolicy_destroy_bookmarks()
1170 int error; in zfs_secpolicy_create_clone() local
1173 if ((error = zfs_get_parent(zc->zc_name, parentname, in zfs_secpolicy_create_clone()
1175 return (error); in zfs_secpolicy_create_clone()
1178 (error = zfs_secpolicy_write_perms(origin, in zfs_secpolicy_create_clone()
1180 return (error); in zfs_secpolicy_create_clone()
1182 if ((error = zfs_secpolicy_write_perms(parentname, in zfs_secpolicy_create_clone()
1184 return (error); in zfs_secpolicy_create_clone()
1211 int error; in zfs_secpolicy_diff() local
1213 if ((error = secpolicy_sys_config(cr, B_FALSE)) == 0) in zfs_secpolicy_diff()
1216 error = zfs_secpolicy_write_perms(zc->zc_name, ZFS_DELEG_PERM_DIFF, cr); in zfs_secpolicy_diff()
1217 return (error); in zfs_secpolicy_diff()
1310 int error; in zfs_secpolicy_hold() local
1317 error = dmu_fsname(nvpair_name(pair), fsname); in zfs_secpolicy_hold()
1318 if (error != 0) in zfs_secpolicy_hold()
1319 return (error); in zfs_secpolicy_hold()
1320 error = zfs_secpolicy_write_perms(fsname, in zfs_secpolicy_hold()
1322 if (error != 0) in zfs_secpolicy_hold()
1323 return (error); in zfs_secpolicy_hold()
1333 int error; in zfs_secpolicy_release() local
1338 error = dmu_fsname(nvpair_name(pair), fsname); in zfs_secpolicy_release()
1339 if (error != 0) in zfs_secpolicy_release()
1340 return (error); in zfs_secpolicy_release()
1341 error = zfs_secpolicy_write_perms(fsname, in zfs_secpolicy_release()
1343 if (error != 0) in zfs_secpolicy_release()
1344 return (error); in zfs_secpolicy_release()
1376 int error; in zfs_secpolicy_tmp_snapshot() local
1378 if ((error = zfs_secpolicy_write_perms(zc->zc_name, in zfs_secpolicy_tmp_snapshot()
1382 error = zfs_secpolicy_snapshot_perms(zc->zc_name, cr); in zfs_secpolicy_tmp_snapshot()
1385 if (error == 0) in zfs_secpolicy_tmp_snapshot()
1386 error = zfs_secpolicy_hold(zc, innvl, cr); in zfs_secpolicy_tmp_snapshot()
1387 if (error == 0) in zfs_secpolicy_tmp_snapshot()
1388 error = zfs_secpolicy_release(zc, innvl, cr); in zfs_secpolicy_tmp_snapshot()
1389 if (error == 0) in zfs_secpolicy_tmp_snapshot()
1390 error = zfs_secpolicy_destroy(zc, innvl, cr); in zfs_secpolicy_tmp_snapshot()
1392 return (error); in zfs_secpolicy_tmp_snapshot()
1402 int error; in get_nvlist() local
1413 if ((error = ddi_copyin((void *)(uintptr_t)nvl, packed, size, in get_nvlist()
1419 if ((error = nvlist_unpack(packed, size, &list, 0)) != 0) { in get_nvlist()
1421 return (error); in get_nvlist()
1473 int error = 0; in put_nvlist() local
1479 error = SET_ERROR(ENOMEM); in put_nvlist()
1484 error = SET_ERROR(EFAULT); in put_nvlist()
1490 return (error); in put_nvlist()
1496 int error = 0; in getzfsvfs_impl() local
1506 error = SET_ERROR(ESRCH); in getzfsvfs_impl()
1509 return (error); in getzfsvfs_impl()
1516 int error; in getzfsvfs() local
1518 error = dmu_objset_hold(dsname, FTAG, &os); in getzfsvfs()
1519 if (error != 0) in getzfsvfs()
1520 return (error); in getzfsvfs()
1522 error = getzfsvfs_impl(os, zfvp); in getzfsvfs()
1524 return (error); in getzfsvfs()
1536 int error = 0; in zfsvfs_hold() local
1539 error = zfsvfs_create(name, B_FALSE, zfvp); in zfsvfs_hold()
1540 if (error == 0) { in zfsvfs_hold()
1553 return (error); in zfsvfs_hold()
1572 int error; in zfs_ioc_pool_create() local
1579 if (error = get_nvlist(zc->zc_nvlist_conf, zc->zc_nvlist_conf_size, in zfs_ioc_pool_create()
1581 return (error); in zfs_ioc_pool_create()
1583 if (zc->zc_nvlist_src_size != 0 && (error = in zfs_ioc_pool_create()
1587 return (error); in zfs_ioc_pool_create()
1599 error = SET_ERROR(EINVAL); in zfs_ioc_pool_create()
1604 error = nvlist_dup(nvl, &rootprops, KM_SLEEP); in zfs_ioc_pool_create()
1605 if (error != 0) { in zfs_ioc_pool_create()
1608 return (error); in zfs_ioc_pool_create()
1615 error = dsl_crypto_params_create_nvlist(DCP_CMD_NONE, in zfs_ioc_pool_create()
1617 if (error != 0) { in zfs_ioc_pool_create()
1620 return (error); in zfs_ioc_pool_create()
1625 error = zfs_fill_zplprops_root(version, rootprops, in zfs_ioc_pool_create()
1627 if (error != 0) in zfs_ioc_pool_create()
1635 error = spa_create(zc->zc_name, config, props, zplprops, dcp); in zfs_ioc_pool_create()
1640 if (!error && (error = zfs_set_prop_nvlist(spa_name, in zfs_ioc_pool_create()
1649 dsl_crypto_params_free(dcp, !!error); in zfs_ioc_pool_create()
1651 return (error); in zfs_ioc_pool_create()
1657 int error; in zfs_ioc_pool_destroy() local
1659 error = spa_destroy(zc->zc_name); in zfs_ioc_pool_destroy()
1660 if (error == 0) in zfs_ioc_pool_destroy()
1662 return (error); in zfs_ioc_pool_destroy()
1670 int error; in zfs_ioc_pool_import() local
1672 if ((error = get_nvlist(zc->zc_nvlist_conf, zc->zc_nvlist_conf_size, in zfs_ioc_pool_import()
1674 return (error); in zfs_ioc_pool_import()
1676 if (zc->zc_nvlist_src_size != 0 && (error = in zfs_ioc_pool_import()
1680 return (error); in zfs_ioc_pool_import()
1685 error = SET_ERROR(EINVAL); in zfs_ioc_pool_import()
1687 error = spa_import(zc->zc_name, config, props, zc->zc_cookie); in zfs_ioc_pool_import()
1693 error = err; in zfs_ioc_pool_import()
1700 return (error); in zfs_ioc_pool_import()
1706 int error; in zfs_ioc_pool_export() local
1711 error = spa_export(zc->zc_name, NULL, force, hardforce); in zfs_ioc_pool_export()
1712 if (error == 0) in zfs_ioc_pool_export()
1714 return (error); in zfs_ioc_pool_export()
1721 int error; in zfs_ioc_pool_configs() local
1726 error = put_nvlist(zc, configs); in zfs_ioc_pool_configs()
1730 return (error); in zfs_ioc_pool_configs()
1746 int error; in zfs_ioc_pool_stats() local
1749 error = spa_get_stats(zc->zc_name, &config, zc->zc_value, in zfs_ioc_pool_stats()
1761 zc->zc_cookie = error; in zfs_ioc_pool_stats()
1763 ret = error; in zfs_ioc_pool_stats()
1777 int error; in zfs_ioc_pool_tryimport() local
1779 if ((error = get_nvlist(zc->zc_nvlist_conf, zc->zc_nvlist_conf_size, in zfs_ioc_pool_tryimport()
1781 return (error); in zfs_ioc_pool_tryimport()
1790 error = put_nvlist(zc, config); in zfs_ioc_pool_tryimport()
1793 return (error); in zfs_ioc_pool_tryimport()
1806 int error; in zfs_ioc_pool_scan() local
1808 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) in zfs_ioc_pool_scan()
1809 return (error); in zfs_ioc_pool_scan()
1815 error = spa_scrub_pause_resume(spa, POOL_SCRUB_PAUSE); in zfs_ioc_pool_scan()
1817 error = spa_scan_stop(spa); in zfs_ioc_pool_scan()
1819 error = spa_scan(spa, zc->zc_cookie); in zfs_ioc_pool_scan()
1823 return (error); in zfs_ioc_pool_scan()
1830 int error; in zfs_ioc_pool_freeze() local
1832 error = spa_open(zc->zc_name, &spa, FTAG); in zfs_ioc_pool_freeze()
1833 if (error == 0) { in zfs_ioc_pool_freeze()
1837 return (error); in zfs_ioc_pool_freeze()
1844 int error; in zfs_ioc_pool_upgrade() local
1846 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) in zfs_ioc_pool_upgrade()
1847 return (error); in zfs_ioc_pool_upgrade()
1858 return (error); in zfs_ioc_pool_upgrade()
1867 int error; in zfs_ioc_pool_get_history() local
1872 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) in zfs_ioc_pool_get_history()
1873 return (error); in zfs_ioc_pool_get_history()
1881 if ((error = spa_history_get(spa, &zc->zc_history_offset, in zfs_ioc_pool_get_history()
1883 error = ddi_copyout(hist_buf, in zfs_ioc_pool_get_history()
1890 return (error); in zfs_ioc_pool_get_history()
1897 int error; in zfs_ioc_pool_reguid() local
1899 error = spa_open(zc->zc_name, &spa, FTAG); in zfs_ioc_pool_reguid()
1900 if (error == 0) { in zfs_ioc_pool_reguid()
1901 error = spa_change_guid(spa); in zfs_ioc_pool_reguid()
1904 return (error); in zfs_ioc_pool_reguid()
1925 int error; in zfs_ioc_obj_to_path() local
1928 if ((error = dmu_objset_hold_flags(zc->zc_name, B_TRUE, in zfs_ioc_obj_to_path()
1930 return (error); in zfs_ioc_obj_to_path()
1935 error = zfs_obj_to_path(os, zc->zc_obj, zc->zc_value, in zfs_ioc_obj_to_path()
1939 return (error); in zfs_ioc_obj_to_path()
1955 int error; in zfs_ioc_obj_to_stats() local
1958 if ((error = dmu_objset_hold_flags(zc->zc_name, B_TRUE, in zfs_ioc_obj_to_stats()
1960 return (error); in zfs_ioc_obj_to_stats()
1965 error = zfs_obj_to_stats(os, zc->zc_obj, &zc->zc_stat, zc->zc_value, in zfs_ioc_obj_to_stats()
1969 return (error); in zfs_ioc_obj_to_stats()
1976 int error; in zfs_ioc_vdev_add() local
1979 error = spa_open(zc->zc_name, &spa, FTAG); in zfs_ioc_vdev_add()
1980 if (error != 0) in zfs_ioc_vdev_add()
1981 return (error); in zfs_ioc_vdev_add()
1983 error = get_nvlist(zc->zc_nvlist_conf, zc->zc_nvlist_conf_size, in zfs_ioc_vdev_add()
1986 if (error == 0) { in zfs_ioc_vdev_add()
1987 error = spa_vdev_add(spa, config); in zfs_ioc_vdev_add()
1991 return (error); in zfs_ioc_vdev_add()
2004 int error; in zfs_ioc_vdev_remove() local
2006 error = spa_open(zc->zc_name, &spa, FTAG); in zfs_ioc_vdev_remove()
2007 if (error != 0) in zfs_ioc_vdev_remove()
2008 return (error); in zfs_ioc_vdev_remove()
2010 error = spa_vdev_remove_cancel(spa); in zfs_ioc_vdev_remove()
2012 error = spa_vdev_remove(spa, zc->zc_guid, B_FALSE); in zfs_ioc_vdev_remove()
2015 return (error); in zfs_ioc_vdev_remove()
2022 int error; in zfs_ioc_vdev_set_state() local
2025 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) in zfs_ioc_vdev_set_state()
2026 return (error); in zfs_ioc_vdev_set_state()
2029 error = vdev_online(spa, zc->zc_guid, zc->zc_obj, &newstate); in zfs_ioc_vdev_set_state()
2033 error = vdev_offline(spa, zc->zc_guid, zc->zc_obj); in zfs_ioc_vdev_set_state()
2041 error = vdev_fault(spa, zc->zc_guid, zc->zc_obj); in zfs_ioc_vdev_set_state()
2049 error = vdev_degrade(spa, zc->zc_guid, zc->zc_obj); in zfs_ioc_vdev_set_state()
2053 error = SET_ERROR(EINVAL); in zfs_ioc_vdev_set_state()
2057 return (error); in zfs_ioc_vdev_set_state()
2066 int error; in zfs_ioc_vdev_attach() local
2068 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) in zfs_ioc_vdev_attach()
2069 return (error); in zfs_ioc_vdev_attach()
2071 if ((error = get_nvlist(zc->zc_nvlist_conf, zc->zc_nvlist_conf_size, in zfs_ioc_vdev_attach()
2073 error = spa_vdev_attach(spa, zc->zc_guid, config, replacing); in zfs_ioc_vdev_attach()
2078 return (error); in zfs_ioc_vdev_attach()
2085 int error; in zfs_ioc_vdev_detach() local
2087 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) in zfs_ioc_vdev_detach()
2088 return (error); in zfs_ioc_vdev_detach()
2090 error = spa_vdev_detach(spa, zc->zc_guid, 0, B_FALSE); in zfs_ioc_vdev_detach()
2093 return (error); in zfs_ioc_vdev_detach()
2101 int error; in zfs_ioc_vdev_split() local
2104 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) in zfs_ioc_vdev_split()
2105 return (error); in zfs_ioc_vdev_split()
2107 if (error = get_nvlist(zc->zc_nvlist_conf, zc->zc_nvlist_conf_size, in zfs_ioc_vdev_split()
2110 return (error); in zfs_ioc_vdev_split()
2113 if (zc->zc_nvlist_src_size != 0 && (error = in zfs_ioc_vdev_split()
2118 return (error); in zfs_ioc_vdev_split()
2121 error = spa_vdev_split_mirror(spa, zc->zc_string, config, props, exp); in zfs_ioc_vdev_split()
2128 return (error); in zfs_ioc_vdev_split()
2137 int error; in zfs_ioc_vdev_setpath() local
2139 error = spa_open(zc->zc_name, &spa, FTAG); in zfs_ioc_vdev_setpath()
2140 if (error != 0) in zfs_ioc_vdev_setpath()
2141 return (error); in zfs_ioc_vdev_setpath()
2143 error = spa_vdev_setpath(spa, guid, path); in zfs_ioc_vdev_setpath()
2145 return (error); in zfs_ioc_vdev_setpath()
2154 int error; in zfs_ioc_vdev_setfru() local
2156 error = spa_open(zc->zc_name, &spa, FTAG); in zfs_ioc_vdev_setfru()
2157 if (error != 0) in zfs_ioc_vdev_setfru()
2158 return (error); in zfs_ioc_vdev_setfru()
2160 error = spa_vdev_setfru(spa, guid, fru); in zfs_ioc_vdev_setfru()
2162 return (error); in zfs_ioc_vdev_setfru()
2168 int error = 0; in zfs_ioc_objset_stats_impl() local
2174 (error = dsl_prop_get_all(os, &nv)) == 0) { in zfs_ioc_objset_stats_impl()
2185 error = zvol_get_stats(os, nv); in zfs_ioc_objset_stats_impl()
2186 if (error == EIO) in zfs_ioc_objset_stats_impl()
2187 return (error); in zfs_ioc_objset_stats_impl()
2188 VERIFY0(error); in zfs_ioc_objset_stats_impl()
2190 error = put_nvlist(zc, nv); in zfs_ioc_objset_stats_impl()
2194 return (error); in zfs_ioc_objset_stats_impl()
2211 int error; in zfs_ioc_objset_stats() local
2213 error = dmu_objset_hold(zc->zc_name, FTAG, &os); in zfs_ioc_objset_stats()
2214 if (error == 0) { in zfs_ioc_objset_stats()
2215 error = zfs_ioc_objset_stats_impl(zc, os); in zfs_ioc_objset_stats()
2219 return (error); in zfs_ioc_objset_stats()
2238 int error = 0; in zfs_ioc_objset_recvd_props() local
2250 (error = dsl_prop_get_received(zc->zc_name, &nv)) == 0) { in zfs_ioc_objset_recvd_props()
2251 error = put_nvlist(zc, nv); in zfs_ioc_objset_recvd_props()
2255 return (error); in zfs_ioc_objset_recvd_props()
2262 int error; in nvl_add_zplprop() local
2268 if ((error = zfs_get_zplprop(os, prop, &value)) != 0) in nvl_add_zplprop()
2269 return (error); in nvl_add_zplprop()
2353 int error; in zfs_ioc_dataset_list_next() local
2358 if (error = dmu_objset_hold(zc->zc_name, FTAG, &os)) { in zfs_ioc_dataset_list_next()
2359 if (error == ENOENT) in zfs_ioc_dataset_list_next()
2360 error = SET_ERROR(ESRCH); in zfs_ioc_dataset_list_next()
2361 return (error); in zfs_ioc_dataset_list_next()
2370 error = dmu_dir_list_next(os, in zfs_ioc_dataset_list_next()
2373 if (error == ENOENT) in zfs_ioc_dataset_list_next()
2374 error = SET_ERROR(ESRCH); in zfs_ioc_dataset_list_next()
2375 } while (error == 0 && dataset_name_hidden(zc->zc_name)); in zfs_ioc_dataset_list_next()
2382 if (error == 0 && strchr(zc->zc_name, '$') == NULL) { in zfs_ioc_dataset_list_next()
2383 error = zfs_ioc_objset_stats(zc); /* fill in the stats */ in zfs_ioc_dataset_list_next()
2384 if (error == ENOENT) { in zfs_ioc_dataset_list_next()
2390 return (error); in zfs_ioc_dataset_list_next()
2410 int error; in zfs_ioc_snapshot_list_next() local
2412 error = dmu_objset_hold(zc->zc_name, FTAG, &os); in zfs_ioc_snapshot_list_next()
2413 if (error != 0) { in zfs_ioc_snapshot_list_next()
2414 return (error == ENOENT ? ESRCH : error); in zfs_ioc_snapshot_list_next()
2427 error = dmu_snapshot_list_next(os, in zfs_ioc_snapshot_list_next()
2432 if (error == 0 && !zc->zc_simple) { in zfs_ioc_snapshot_list_next()
2436 error = dsl_dataset_hold_obj(dp, zc->zc_obj, FTAG, &ds); in zfs_ioc_snapshot_list_next()
2437 if (error == 0) { in zfs_ioc_snapshot_list_next()
2440 error = dmu_objset_from_ds(ds, &ossnap); in zfs_ioc_snapshot_list_next()
2441 if (error == 0) in zfs_ioc_snapshot_list_next()
2442 error = zfs_ioc_objset_stats_impl(zc, ossnap); in zfs_ioc_snapshot_list_next()
2445 } else if (error == ENOENT) { in zfs_ioc_snapshot_list_next()
2446 error = SET_ERROR(ESRCH); in zfs_ioc_snapshot_list_next()
2451 if (error != 0) in zfs_ioc_snapshot_list_next()
2453 return (error); in zfs_ioc_snapshot_list_next()
2784 int error = 0; in zfs_check_userprops() local
2793 if (error = zfs_secpolicy_write_perms(fsname, in zfs_check_userprops()
2795 return (error); in zfs_check_userprops()
2860 int error; in zfs_ioc_set_prop() local
2862 if ((error = get_nvlist(zc->zc_nvlist_src, zc->zc_nvlist_src_size, in zfs_ioc_set_prop()
2864 return (error); in zfs_ioc_set_prop()
2875 error = dsl_prop_set_hasrecvd(zc->zc_name); in zfs_ioc_set_prop()
2879 if (error == 0) in zfs_ioc_set_prop()
2880 error = zfs_set_prop_nvlist(zc->zc_name, source, nvl, errors); in zfs_ioc_set_prop()
2888 return (error); in zfs_ioc_set_prop()
2971 int error; in zfs_ioc_pool_set_props() local
2974 if (error = get_nvlist(zc->zc_nvlist_src, zc->zc_nvlist_src_size, in zfs_ioc_pool_set_props()
2976 return (error); in zfs_ioc_pool_set_props()
2998 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) { in zfs_ioc_pool_set_props()
3000 return (error); in zfs_ioc_pool_set_props()
3003 error = spa_prop_set(spa, props); in zfs_ioc_pool_set_props()
3008 return (error); in zfs_ioc_pool_set_props()
3015 int error; in zfs_ioc_pool_get_props() local
3018 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) { in zfs_ioc_pool_get_props()
3026 error = spa_prop_get(spa, &nvp); in zfs_ioc_pool_get_props()
3029 error = spa_prop_get(spa, &nvp); in zfs_ioc_pool_get_props()
3033 if (error == 0 && zc->zc_nvlist_dst != 0) in zfs_ioc_pool_get_props()
3034 error = put_nvlist(zc, nvp); in zfs_ioc_pool_get_props()
3036 error = SET_ERROR(EFAULT); in zfs_ioc_pool_get_props()
3039 return (error); in zfs_ioc_pool_get_props()
3053 int error; in zfs_ioc_set_fsacl() local
3056 if ((error = get_nvlist(zc->zc_nvlist_src, zc->zc_nvlist_src_size, in zfs_ioc_set_fsacl()
3058 return (error); in zfs_ioc_set_fsacl()
3063 if ((error = zfs_deleg_verify_nvlist(fsaclnv)) != 0) { in zfs_ioc_set_fsacl()
3074 error = secpolicy_zfs(CRED()); in zfs_ioc_set_fsacl()
3075 if (error != 0) { in zfs_ioc_set_fsacl()
3077 error = dsl_deleg_can_allow(zc->zc_name, in zfs_ioc_set_fsacl()
3080 error = dsl_deleg_can_unallow(zc->zc_name, in zfs_ioc_set_fsacl()
3085 if (error == 0) in zfs_ioc_set_fsacl()
3086 error = dsl_deleg_set(zc->zc_name, fsaclnv, zc->zc_perm_action); in zfs_ioc_set_fsacl()
3089 return (error); in zfs_ioc_set_fsacl()
3103 int error; in zfs_ioc_get_fsacl() local
3105 if ((error = dsl_deleg_get(zc->zc_name, &nvp)) == 0) { in zfs_ioc_get_fsacl()
3106 error = put_nvlist(zc, nvp); in zfs_ioc_get_fsacl()
3110 return (error); in zfs_ioc_get_fsacl()
3235 int error; in zfs_fill_zplprops() local
3242 if ((error = spa_open(dataset, &spa, FTAG)) != 0) in zfs_fill_zplprops()
3243 return (error); in zfs_fill_zplprops()
3255 if ((error = dmu_objset_hold(parentname, FTAG, &os)) != 0) in zfs_fill_zplprops()
3256 return (error); in zfs_fill_zplprops()
3258 error = zfs_fill_zplprops_impl(os, zplver, fuids_ok, sa_ok, createprops, in zfs_fill_zplprops()
3261 return (error); in zfs_fill_zplprops()
3271 int error; in zfs_fill_zplprops_root() local
3277 error = zfs_fill_zplprops_impl(NULL, zplver, fuids_ok, sa_ok, in zfs_fill_zplprops_root()
3279 return (error); in zfs_fill_zplprops_root()
3302 int error = 0; in zfs_ioc_create() local
3346 if ((error = nvlist_lookup_uint64(nvprops, in zfs_ioc_create()
3348 &volblocksize)) != 0 && error != ENOENT) in zfs_ioc_create()
3351 if (error != 0) in zfs_ioc_create()
3355 if ((error = zvol_check_volblocksize( in zfs_ioc_create()
3357 (error = zvol_check_volsize(volsize, in zfs_ioc_create()
3359 return (error); in zfs_ioc_create()
3361 int error; in zfs_ioc_create() local
3371 error = zfs_fill_zplprops(fsname, nvprops, in zfs_ioc_create()
3373 if (error != 0) { in zfs_ioc_create()
3375 return (error); in zfs_ioc_create()
3379 error = dsl_crypto_params_create_nvlist(DCP_CMD_NONE, nvprops, in zfs_ioc_create()
3381 if (error != 0) { in zfs_ioc_create()
3383 return (error); in zfs_ioc_create()
3386 error = dmu_objset_create(fsname, type, in zfs_ioc_create()
3390 dsl_crypto_params_free(dcp, !!error); in zfs_ioc_create()
3395 if (error == 0) { in zfs_ioc_create()
3396 error = zfs_set_prop_nvlist(fsname, ZPROP_SRC_LOCAL, in zfs_ioc_create()
3398 if (error != 0) in zfs_ioc_create()
3401 return (error); in zfs_ioc_create()
3423 int error = 0; in zfs_ioc_clone() local
3438 error = dmu_objset_clone(fsname, origin_name); in zfs_ioc_clone()
3443 if (error == 0) { in zfs_ioc_clone()
3444 error = zfs_set_prop_nvlist(fsname, ZPROP_SRC_LOCAL, in zfs_ioc_clone()
3446 if (error != 0) in zfs_ioc_clone()
3449 return (error); in zfs_ioc_clone()
3485 int error, poollen; in zfs_ioc_snapshot() local
3489 if ((error = zfs_check_userprops(poolname, props)) != 0) in zfs_ioc_snapshot()
3490 return (error); in zfs_ioc_snapshot()
3528 error = dsl_dataset_snapshot(snaps, props, outnvl); in zfs_ioc_snapshot()
3529 return (error); in zfs_ioc_snapshot()
3545 int error; in zfs_ioc_log_history() local
3557 error = spa_open(poolname, &spa, FTAG); in zfs_ioc_log_history()
3559 if (error != 0) in zfs_ioc_log_history()
3560 return (error); in zfs_ioc_log_history()
3569 error = spa_history_log(spa, message); in zfs_ioc_log_history()
3571 return (error); in zfs_ioc_log_history()
3594 int error; in zfs_ioc_set_bootenv() local
3597 if ((error = spa_open(name, &spa, FTAG)) != 0) in zfs_ioc_set_bootenv()
3598 return (error); in zfs_ioc_set_bootenv()
3600 error = vdev_label_write_bootenv(spa->spa_root_vdev, innvl); in zfs_ioc_set_bootenv()
3603 return (error); in zfs_ioc_set_bootenv()
3615 int error; in zfs_ioc_get_bootenv() local
3617 if ((error = spa_open(name, &spa, FTAG)) != 0) in zfs_ioc_get_bootenv()
3618 return (error); in zfs_ioc_get_bootenv()
3620 error = vdev_label_read_bootenv(spa->spa_root_vdev, outnvl); in zfs_ioc_get_bootenv()
3623 return (error); in zfs_ioc_get_bootenv()
3681 int error; in zfs_destroy_unmount_origin() local
3685 error = dmu_objset_hold(fsname, FTAG, &os); in zfs_destroy_unmount_origin()
3686 if (error != 0) in zfs_destroy_unmount_origin()
3811 int error, poollen; in zfs_ioc_destroy_bookmarks() local
3835 error = dsl_bookmark_destroy(innvl, outnvl); in zfs_ioc_destroy_bookmarks()
3836 return (error); in zfs_ioc_destroy_bookmarks()
4037 int error = spa_open(poolname, &spa, FTAG); in zfs_ioc_pool_initialize() local
4038 if (error != 0) in zfs_ioc_pool_initialize()
4039 return (error); in zfs_ioc_pool_initialize()
4123 int error = spa_open(poolname, &spa, FTAG); in zfs_ioc_pool_trim() local
4124 if (error != 0) in zfs_ioc_pool_trim()
4125 return (error); in zfs_ioc_pool_trim()
4158 int error; in zfs_ioc_rollback() local
4177 error = zfs_suspend_fs(zfsvfs); in zfs_ioc_rollback()
4178 if (error == 0) { in zfs_ioc_rollback()
4181 error = dsl_dataset_rollback(fsname, target, zfsvfs, in zfs_ioc_rollback()
4184 error = error ? error : resume_err; in zfs_ioc_rollback()
4188 error = dsl_dataset_rollback(fsname, target, NULL, outnvl); in zfs_ioc_rollback()
4190 return (error); in zfs_ioc_rollback()
4239 int error; in zfs_ioc_rename() local
4245 error = dmu_objset_find(zc->zc_name, in zfs_ioc_rename()
4248 if (error != 0) { in zfs_ioc_rename()
4250 return (error); in zfs_ioc_rename()
4253 error = dsl_dataset_rename_snapshot(zc->zc_name, in zfs_ioc_rename()
4257 return (error); in zfs_ioc_rename()
4748 int error = 0; in zfs_ioc_recv_impl() local
4766 error = dmu_recv_begin(tofs, tosnap, begin_record, force, in zfs_ioc_recv_impl()
4768 if (error != 0) in zfs_ioc_recv_impl()
4871 error = dmu_recv_stream(&drc, input_fp->f_vnode, &off, cleanup_fd, in zfs_ioc_recv_impl()
4874 if (error == 0) { in zfs_ioc_recv_impl()
4883 error = zfs_suspend_fs(zfsvfs); in zfs_ioc_recv_impl()
4889 if (error == 0) in zfs_ioc_recv_impl()
4890 error = zfs_resume_fs(zfsvfs, ds); in zfs_ioc_recv_impl()
4891 error = error ? error : end_err; in zfs_ioc_recv_impl()
4894 error = dmu_recv_end(&drc, NULL); in zfs_ioc_recv_impl()
4898 if (recv_delayprops != NULL && error == 0) { in zfs_ioc_recv_impl()
4902 if (local_delayprops != NULL && error == 0) { in zfs_ioc_recv_impl()
4933 error = 1; in zfs_ioc_recv_impl()
4940 if (error != 0 && recvprops != NULL && !drc.drc_newfs) { in zfs_ioc_recv_impl()
4974 if (error != 0 && localprops != NULL && !drc.drc_newfs && in zfs_ioc_recv_impl()
5034 if (error == 0) in zfs_ioc_recv_impl()
5035 error = props_error; in zfs_ioc_recv_impl()
5037 return (error); in zfs_ioc_recv_impl()
5072 int error = 0; in zfs_ioc_recv() local
5085 (error = get_nvlist(zc->zc_nvlist_src, zc->zc_nvlist_src_size, in zfs_ioc_recv()
5091 (error = get_nvlist(zc->zc_nvlist_conf, zc->zc_nvlist_conf_size, in zfs_ioc_recv()
5097 (error = get_nvlist(zc->zc_history_offset, zc->zc_history_len, in zfs_ioc_recv()
5109 error = zfs_ioc_recv_impl(tofs, tosnap, origin, recvdprops, localprops, in zfs_ioc_recv()
5125 error = SET_ERROR(EINVAL); in zfs_ioc_recv()
5134 return (error); in zfs_ioc_recv()
5154 int error; in zfs_ioc_send() local
5166 error = dsl_pool_hold(zc->zc_name, FTAG, &dp); in zfs_ioc_send()
5167 if (error != 0) in zfs_ioc_send()
5168 return (error); in zfs_ioc_send()
5170 error = dsl_dataset_hold_obj(dp, zc->zc_sendobj, FTAG, &tosnap); in zfs_ioc_send()
5171 if (error != 0) { in zfs_ioc_send()
5173 return (error); in zfs_ioc_send()
5188 error = dsl_pool_hold(zc->zc_name, FTAG, &dp); in zfs_ioc_send()
5189 if (error != 0) in zfs_ioc_send()
5190 return (error); in zfs_ioc_send()
5192 error = dsl_dataset_hold_obj(dp, zc->zc_sendobj, in zfs_ioc_send()
5194 if (error != 0) { in zfs_ioc_send()
5196 return (error); in zfs_ioc_send()
5200 error = dsl_dataset_hold_obj(dp, zc->zc_fromobj, in zfs_ioc_send()
5202 if (error != 0) { in zfs_ioc_send()
5205 return (error); in zfs_ioc_send()
5209 error = dmu_send_estimate(tosnap, fromsnap, compressok || rawok, in zfs_ioc_send()
5222 error = dmu_send_obj(zc->zc_name, zc->zc_sendobj, in zfs_ioc_send()
5230 return (error); in zfs_ioc_send()
5247 int error; in zfs_ioc_send_progress() local
5249 error = dsl_pool_hold(zc->zc_name, FTAG, &dp); in zfs_ioc_send_progress()
5250 if (error != 0) in zfs_ioc_send_progress()
5251 return (error); in zfs_ioc_send_progress()
5253 error = dsl_dataset_hold(dp, zc->zc_name, FTAG, &ds); in zfs_ioc_send_progress()
5254 if (error != 0) { in zfs_ioc_send_progress()
5256 return (error); in zfs_ioc_send_progress()
5277 error = SET_ERROR(ENOENT); in zfs_ioc_send_progress()
5282 return (error); in zfs_ioc_send_progress()
5288 int id, error; in zfs_ioc_inject_fault() local
5290 error = zio_inject_fault(zc->zc_name, (int)zc->zc_guid, &id, in zfs_ioc_inject_fault()
5293 if (error == 0) in zfs_ioc_inject_fault()
5296 return (error); in zfs_ioc_inject_fault()
5309 int error; in zfs_ioc_inject_list_next() local
5311 error = zio_inject_list_next(&id, zc->zc_name, sizeof (zc->zc_name), in zfs_ioc_inject_list_next()
5316 return (error); in zfs_ioc_inject_list_next()
5323 int error; in zfs_ioc_error_log() local
5326 if ((error = spa_open(zc->zc_name, &spa, FTAG)) != 0) in zfs_ioc_error_log()
5327 return (error); in zfs_ioc_error_log()
5329 error = spa_get_errlog(spa, (void *)(uintptr_t)zc->zc_nvlist_dst, in zfs_ioc_error_log()
5331 if (error == 0) in zfs_ioc_error_log()
5338 return (error); in zfs_ioc_error_log()
5346 int error; in zfs_ioc_clear() local
5365 error = spa_open(zc->zc_name, &spa, FTAG); in zfs_ioc_clear()
5373 if ((error = get_nvlist(zc->zc_nvlist_src, in zfs_ioc_clear()
5375 error = spa_open_rewind(zc->zc_name, &spa, FTAG, in zfs_ioc_clear()
5381 error = err; in zfs_ioc_clear()
5388 if (error != 0) in zfs_ioc_clear()
5389 return (error); in zfs_ioc_clear()
5419 error = SET_ERROR(EIO); in zfs_ioc_clear()
5423 return (error); in zfs_ioc_clear()
5430 int error; in zfs_ioc_pool_reopen() local
5432 error = spa_open(zc->zc_name, &spa, FTAG); in zfs_ioc_pool_reopen()
5433 if (error != 0) in zfs_ioc_pool_reopen()
5434 return (error); in zfs_ioc_pool_reopen()
5466 int error; in zfs_ioc_promote() local
5473 error = dsl_pool_hold(zc->zc_name, FTAG, &dp); in zfs_ioc_promote()
5474 if (error != 0) in zfs_ioc_promote()
5475 return (error); in zfs_ioc_promote()
5477 error = dsl_dataset_hold(dp, zc->zc_name, FTAG, &ds); in zfs_ioc_promote()
5478 if (error != 0) { in zfs_ioc_promote()
5480 return (error); in zfs_ioc_promote()
5489 error = dsl_dataset_hold_obj(dp, in zfs_ioc_promote()
5491 if (error != 0) { in zfs_ioc_promote()
5494 return (error); in zfs_ioc_promote()
5530 int error; in zfs_ioc_userspace_one() local
5535 error = zfsvfs_hold(zc->zc_name, FTAG, &zfsvfs, B_FALSE); in zfs_ioc_userspace_one()
5536 if (error != 0) in zfs_ioc_userspace_one()
5537 return (error); in zfs_ioc_userspace_one()
5539 error = zfs_userspace_one(zfsvfs, in zfs_ioc_userspace_one()
5543 return (error); in zfs_ioc_userspace_one()
5566 int error = zfsvfs_hold(zc->zc_name, FTAG, &zfsvfs, B_FALSE); in zfs_ioc_userspace_many() local
5567 if (error != 0) in zfs_ioc_userspace_many()
5568 return (error); in zfs_ioc_userspace_many()
5572 error = zfs_userspace_many(zfsvfs, zc->zc_objset_type, &zc->zc_cookie, in zfs_ioc_userspace_many()
5575 if (error == 0) { in zfs_ioc_userspace_many()
5576 error = xcopyout(buf, in zfs_ioc_userspace_many()
5583 return (error); in zfs_ioc_userspace_many()
5597 int error = 0; in zfs_ioc_userspace_upgrade() local
5610 error = zfs_suspend_fs(zfsvfs); in zfs_ioc_userspace_upgrade()
5611 if (error == 0) { in zfs_ioc_userspace_upgrade()
5614 error = zfs_resume_fs(zfsvfs, newds); in zfs_ioc_userspace_upgrade()
5617 if (error == 0) in zfs_ioc_userspace_upgrade()
5618 error = dmu_objset_userspace_upgrade(zfsvfs->z_os); in zfs_ioc_userspace_upgrade()
5622 error = dmu_objset_hold_flags(zc->zc_name, B_TRUE, FTAG, &os); in zfs_ioc_userspace_upgrade()
5623 if (error != 0) in zfs_ioc_userspace_upgrade()
5624 return (error); in zfs_ioc_userspace_upgrade()
5626 error = dmu_objset_userspace_upgrade(os); in zfs_ioc_userspace_upgrade()
5630 return (error); in zfs_ioc_userspace_upgrade()
5644 int error; in zfs_ioc_id_quota_upgrade() local
5646 error = dmu_objset_hold(zc->zc_name, FTAG, &os); in zfs_ioc_id_quota_upgrade()
5647 if (error != 0) in zfs_ioc_id_quota_upgrade()
5648 return (error); in zfs_ioc_id_quota_upgrade()
5666 error = os->os_upgrade_status; in zfs_ioc_id_quota_upgrade()
5673 return (error); in zfs_ioc_id_quota_upgrade()
5698 int error; in zfs_init_sharefs() local
5704 KRTLD_MODE_FIRST, &error)) == NULL)) { in zfs_init_sharefs()
5709 ddi_modsym(sharefs_mod, "sharefs_impl", &error)) == NULL)) { in zfs_init_sharefs()
5718 int error; in zfs_ioc_share() local
5727 KRTLD_MODE_FIRST, &error)) == NULL)) { in zfs_ioc_share()
5734 "nfs_export", &error)) == NULL)) { in zfs_ioc_share()
5738 error = zfs_init_sharefs(); in zfs_ioc_share()
5739 if (error != 0) { in zfs_ioc_share()
5753 KRTLD_MODE_FIRST, &error)) == NULL)) { in zfs_ioc_share()
5759 "smb_server_share", &error)) == NULL)) { in zfs_ioc_share()
5763 error = zfs_init_sharefs(); in zfs_ioc_share()
5764 if (error != 0) { in zfs_ioc_share()
5779 if (error = in zfs_ioc_share()
5782 return (error); in zfs_ioc_share()
5786 if (error = zsmbexport_fs((void *) in zfs_ioc_share()
5790 return (error); in zfs_ioc_share()
5802 error = zshare_fs(opcode, in zfs_ioc_share()
5806 return (error); in zfs_ioc_share()
5826 int error; in zfs_ioc_next_obj() local
5828 error = dmu_objset_hold(zc->zc_name, FTAG, &os); in zfs_ioc_next_obj()
5829 if (error != 0) in zfs_ioc_next_obj()
5830 return (error); in zfs_ioc_next_obj()
5832 error = dmu_object_next(os, &zc->zc_obj, B_FALSE, in zfs_ioc_next_obj()
5836 return (error); in zfs_ioc_next_obj()
5853 int error; in zfs_ioc_tmp_snapshot() local
5856 error = zfs_onexit_fd_hold(zc->zc_cleanup_fd, &minor); in zfs_ioc_tmp_snapshot()
5857 if (error != 0) in zfs_ioc_tmp_snapshot()
5858 return (error); in zfs_ioc_tmp_snapshot()
5864 error = dsl_dataset_snapshot_tmp(zc->zc_name, snap_name, minor, in zfs_ioc_tmp_snapshot()
5866 if (error == 0) in zfs_ioc_tmp_snapshot()
5871 return (error); in zfs_ioc_tmp_snapshot()
5888 int error; in zfs_ioc_diff() local
5896 error = dmu_diff(zc->zc_name, zc->zc_value, fp->f_vnode, &off); in zfs_ioc_diff()
5902 return (error); in zfs_ioc_diff()
5914 int error; in zfs_smb_acl_purge() local
5917 (error = zap_cursor_retrieve(&zc, &zap)) == 0; in zfs_smb_acl_purge()
5919 if ((error = VOP_REMOVE(ZTOV(dzp), zap.za_name, kcred, in zfs_smb_acl_purge()
5924 return (error); in zfs_smb_acl_purge()
5939 int error = 0; in zfs_ioc_smb_acl() local
5941 if ((error = lookupname(zc->zc_value, UIO_SYSSPACE, in zfs_ioc_smb_acl()
5943 return (error); in zfs_ioc_smb_acl()
5969 error = dmu_tx_assign(tx, TXG_WAIT); in zfs_ioc_smb_acl()
5970 if (error != 0) { in zfs_ioc_smb_acl()
5973 error = zfs_create_share_dir(zfsvfs, tx); in zfs_ioc_smb_acl()
5976 if (error != 0) { in zfs_ioc_smb_acl()
5980 return (error); in zfs_ioc_smb_acl()
5986 if ((error = zfs_zget(zfsvfs, zfsvfs->z_shares_dir, &sharedir)) != 0) { in zfs_ioc_smb_acl()
5989 return (error); in zfs_ioc_smb_acl()
6005 error = VOP_CREATE(ZTOV(sharedir), zc->zc_string, in zfs_ioc_smb_acl()
6012 error = VOP_REMOVE(ZTOV(sharedir), zc->zc_string, kcred, in zfs_ioc_smb_acl()
6017 if ((error = get_nvlist(zc->zc_nvlist_src, in zfs_ioc_smb_acl()
6022 return (error); in zfs_ioc_smb_acl()
6031 return (error); in zfs_ioc_smb_acl()
6033 error = VOP_RENAME(ZTOV(sharedir), src, ZTOV(sharedir), target, in zfs_ioc_smb_acl()
6039 error = zfs_smb_acl_purge(sharedir); in zfs_ioc_smb_acl()
6043 error = SET_ERROR(EINVAL); in zfs_ioc_smb_acl()
6052 return (error); in zfs_ioc_smb_acl()
6078 int error; in zfs_ioc_hold() local
6088 error = nvpair_value_string(pair, &htag); in zfs_ioc_hold()
6089 if (error != 0) in zfs_ioc_hold()
6090 return (SET_ERROR(error)); in zfs_ioc_hold()
6097 error = zfs_onexit_fd_hold(cleanup_fd, &minor); in zfs_ioc_hold()
6098 if (error != 0) in zfs_ioc_hold()
6099 return (error); in zfs_ioc_hold()
6102 error = dsl_dataset_user_hold(holds, minor, errlist); in zfs_ioc_hold()
6105 return (error); in zfs_ioc_hold()
6162 int error; in zfs_ioc_space_written() local
6166 error = dsl_pool_hold(zc->zc_name, FTAG, &dp); in zfs_ioc_space_written()
6167 if (error != 0) in zfs_ioc_space_written()
6168 return (error); in zfs_ioc_space_written()
6169 error = dsl_dataset_hold(dp, zc->zc_name, FTAG, &new); in zfs_ioc_space_written()
6170 if (error != 0) { in zfs_ioc_space_written()
6172 return (error); in zfs_ioc_space_written()
6174 error = dsl_dataset_hold(dp, zc->zc_value, FTAG, &old); in zfs_ioc_space_written()
6175 if (error != 0) { in zfs_ioc_space_written()
6178 return (error); in zfs_ioc_space_written()
6181 error = dsl_dataset_space_written(old, new, &zc->zc_cookie, in zfs_ioc_space_written()
6186 return (error); in zfs_ioc_space_written()
6207 int error; in zfs_ioc_space_snaps() local
6215 error = dsl_pool_hold(lastsnap, FTAG, &dp); in zfs_ioc_space_snaps()
6216 if (error != 0) in zfs_ioc_space_snaps()
6217 return (error); in zfs_ioc_space_snaps()
6219 error = dsl_dataset_hold(dp, lastsnap, FTAG, &new); in zfs_ioc_space_snaps()
6220 if (error == 0 && !new->ds_is_snapshot) { in zfs_ioc_space_snaps()
6222 error = SET_ERROR(EINVAL); in zfs_ioc_space_snaps()
6224 if (error != 0) { in zfs_ioc_space_snaps()
6226 return (error); in zfs_ioc_space_snaps()
6228 error = dsl_dataset_hold(dp, firstsnap, FTAG, &old); in zfs_ioc_space_snaps()
6229 if (error == 0 && !old->ds_is_snapshot) { in zfs_ioc_space_snaps()
6231 error = SET_ERROR(EINVAL); in zfs_ioc_space_snaps()
6233 if (error != 0) { in zfs_ioc_space_snaps()
6236 return (error); in zfs_ioc_space_snaps()
6239 error = dsl_dataset_space_wouldfree(old, new, &used, &comp, &uncomp); in zfs_ioc_space_snaps()
6246 return (error); in zfs_ioc_space_snaps()
6282 int error; in zfs_ioc_send_new() local
6310 error = dmu_send(snapname, fromname, embedok, largeblockok, compressok, in zfs_ioc_send_new()
6316 return (error); in zfs_ioc_send_new()
6352 int error; in zfs_ioc_send_space() local
6358 error = dsl_pool_hold(snapname, FTAG, &dp); in zfs_ioc_send_space()
6359 if (error != 0) in zfs_ioc_send_space()
6360 return (error); in zfs_ioc_send_space()
6362 error = dsl_dataset_hold(dp, snapname, FTAG, &tosnap); in zfs_ioc_send_space()
6363 if (error != 0) { in zfs_ioc_send_space()
6365 return (error); in zfs_ioc_send_space()
6371 error = nvlist_lookup_string(innvl, "from", &fromname); in zfs_ioc_send_space()
6372 if (error == 0) { in zfs_ioc_send_space()
6380 error = dsl_dataset_hold(dp, fromname, FTAG, &fromsnap); in zfs_ioc_send_space()
6381 if (error != 0) in zfs_ioc_send_space()
6383 error = dmu_send_estimate(tosnap, fromsnap, in zfs_ioc_send_space()
6394 error = dsl_bookmark_lookup(dp, fromname, tosnap, in zfs_ioc_send_space()
6396 if (error != 0) in zfs_ioc_send_space()
6398 error = dmu_send_estimate_from_txg(tosnap, in zfs_ioc_send_space()
6406 error = SET_ERROR(EINVAL); in zfs_ioc_send_space()
6413 error = dmu_send_estimate(tosnap, NULL, compressok || rawok, in zfs_ioc_send_space()
6422 return (error); in zfs_ioc_send_space()
6494 goto error; in zfs_ioc_load_key()
6502 goto error; in zfs_ioc_load_key()
6506 goto error; in zfs_ioc_load_key()
6512 error: in zfs_ioc_load_key()
6574 goto error; in zfs_ioc_change_key()
6583 goto error; in zfs_ioc_change_key()
6587 goto error; in zfs_ioc_change_key()
6593 error: in zfs_ioc_change_key()
7059 int error; in pool_status_check() local
7066 error = spa_open(name, &spa, FTAG); in pool_status_check()
7067 if (error == 0) { in pool_status_check()
7069 error = SET_ERROR(EAGAIN); in pool_status_check()
7071 error = SET_ERROR(EROFS); in pool_status_check()
7074 return (error); in pool_status_check()
7149 int error = 0; in zfsdev_open() local
7157 error = zfs_ctldev_init(devp); in zfsdev_open()
7161 return (error); in zfsdev_open()
7190 int error, rc, len; in zfsdev_ioctl() local
7216 error = ddi_copyin((void *)arg, zc, sizeof (zfs_cmd_t), flag); in zfsdev_ioctl()
7217 if (error != 0) { in zfsdev_ioctl()
7218 error = SET_ERROR(EFAULT); in zfsdev_ioctl()
7224 error = get_nvlist(zc->zc_nvlist_src, zc->zc_nvlist_src_size, in zfsdev_ioctl()
7226 if (error != 0) in zfsdev_ioctl()
7238 error = SET_ERROR(EINVAL); in zfsdev_ioctl()
7240 error = pool_status_check(zc->zc_name, in zfsdev_ioctl()
7246 error = SET_ERROR(EINVAL); in zfsdev_ioctl()
7248 error = pool_status_check(zc->zc_name, in zfsdev_ioctl()
7264 if (error == 0 && vec->zvec_func != NULL) { in zfsdev_ioctl()
7265 error = zfs_check_input_nvpairs(innvl, vec); in zfsdev_ioctl()
7266 if (error != 0) in zfsdev_ioctl()
7270 if (error == 0) in zfsdev_ioctl()
7271 error = vec->zvec_secpolicy(zc, innvl, cr); in zfsdev_ioctl()
7273 if (error != 0) in zfsdev_ioctl()
7304 error = vec->zvec_func(zc->zc_name, innvl, outnvl); in zfsdev_ioctl()
7311 if ((error == 0 || in zfsdev_ioctl()
7312 (cmd == ZFS_IOC_CHANNEL_PROGRAM && error != EINVAL)) && in zfsdev_ioctl()
7319 if (error != 0) { in zfsdev_ioctl()
7321 error); in zfsdev_ioctl()
7339 error = puterror; in zfsdev_ioctl()
7343 error = vec->zvec_legacy_func(zc); in zfsdev_ioctl()
7349 if (error == 0 && rc != 0) in zfsdev_ioctl()
7350 error = SET_ERROR(EFAULT); in zfsdev_ioctl()
7351 if (error == 0 && vec->zvec_allow_log) { in zfsdev_ioctl()
7362 return (error); in zfsdev_ioctl()
7484 int error; in _init() local
7491 if ((error = mod_install(&modlinkage)) != 0) { in _init()
7495 return (error); in _init()
7502 error = ldi_ident_from_mod(&modlinkage, &zfs_li); in _init()
7503 ASSERT(error == 0); in _init()
7512 int error; in _fini() local
7517 if ((error = mod_remove(&modlinkage)) != 0) in _fini()
7518 return (error); in _fini()
7535 return (error); in _fini()