Lines Matching refs:zfsvfs

280 zfs_create_share_dir(zfsvfs_t *zfsvfs, dmu_tx_t *tx)
298 sharezp->z_zfsvfs = zfsvfs;
299 sharezp->z_is_sa = zfsvfs->z_use_sa;
306 error = zap_add(zfsvfs->z_os, MASTER_NODE_OBJ,
308 zfsvfs->z_shares_dir = sharezp->z_id;
358 zfs_znode_sa_init(zfsvfs_t *zfsvfs, znode_t *zp,
361 ASSERT(!POINTER_IS_VALID(zp->z_zfsvfs) || (zfsvfs == zp->z_zfsvfs));
362 ASSERT(MUTEX_HELD(ZFS_OBJ_MUTEX(zfsvfs, zp->z_id)));
367 VERIFY0(sa_handle_get_from_db(zfsvfs->z_os, db, zp,
380 if (zp->z_id == zfsvfs->z_root && zfsvfs->z_parent == zfsvfs)
415 zfs_znode_alloc(zfsvfs_t *zfsvfs, dmu_buf_t *db, int blksz,
433 KASSERT((zfsvfs->z_parent->z_vfs->mnt_kern_flag & MNTK_FPLOOKUP) == 0,
444 error = getnewvnode("zfs", zfsvfs->z_parent->z_vfs, &zfs_vnodeops, &vp);
475 zfs_znode_sa_init(zfsvfs, zp, db, obj_type, hdl);
477 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_MODE(zfsvfs), NULL, &mode, 8);
478 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_GEN(zfsvfs), NULL, &zp->z_gen, 8);
479 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_SIZE(zfsvfs), NULL,
481 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_LINKS(zfsvfs), NULL,
483 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_FLAGS(zfsvfs), NULL,
485 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_PARENT(zfsvfs), NULL, &parent, 8);
486 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_ATIME(zfsvfs), NULL,
489 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_MTIME(zfsvfs), NULL,
491 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_CTIME(zfsvfs), NULL,
494 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_UID(zfsvfs), NULL,
496 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_GID(zfsvfs), NULL,
500 (dmu_objset_projectquota_enabled(zfsvfs->z_os) &&
502 sa_lookup(zp->z_sa_hdl, SA_ZPL_PROJID(zfsvfs), &projid, 8) != 0)) {
528 if (parent == zfsvfs->z_shares_dir) {
538 mutex_enter(&zfsvfs->z_znodes_lock);
539 list_insert_tail(&zfsvfs->z_all_znodes, zp);
540 zp->z_zfsvfs = zfsvfs;
541 mutex_exit(&zfsvfs->z_znodes_lock);
581 zfsvfs_t *zfsvfs = dzp->z_zfsvfs;
596 if (zfsvfs->z_replay) {
605 dnodesize = dmu_objset_dnodesize(zfsvfs->z_os);
611 obj_type = zfsvfs->z_use_sa ? DMU_OT_SA : DMU_OT_ZNODE;
625 if (zfsvfs->z_replay) {
626 VERIFY0(zap_create_claim_norm_dnsize(zfsvfs->z_os, obj,
627 zfsvfs->z_norm, DMU_OT_DIRECTORY_CONTENTS,
630 obj = zap_create_norm_dnsize(zfsvfs->z_os,
631 zfsvfs->z_norm, DMU_OT_DIRECTORY_CONTENTS,
635 if (zfsvfs->z_replay) {
636 VERIFY0(dmu_object_claim_dnsize(zfsvfs->z_os, obj,
640 obj = dmu_object_alloc_dnsize(zfsvfs->z_os,
646 ZFS_OBJ_HOLD_ENTER(zfsvfs, obj);
647 VERIFY0(sa_buf_hold(zfsvfs->z_os, obj, NULL, &db));
666 if (zfsvfs->z_use_fuids)
710 VERIFY0(sa_handle_get_from_db(zfsvfs->z_os, db, NULL, SA_HDL_SHARED,
722 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_ATIME(zfsvfs),
724 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_MTIME(zfsvfs),
726 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_CTIME(zfsvfs),
728 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_CRTIME(zfsvfs),
730 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_GEN(zfsvfs),
732 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_MODE(zfsvfs),
734 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_SIZE(zfsvfs),
736 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_PARENT(zfsvfs),
739 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_MODE(zfsvfs),
741 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_SIZE(zfsvfs),
743 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_GEN(zfsvfs),
745 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_UID(zfsvfs),
747 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_GID(zfsvfs),
749 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_PARENT(zfsvfs),
751 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_FLAGS(zfsvfs),
753 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_ATIME(zfsvfs),
755 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_MTIME(zfsvfs),
757 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_CTIME(zfsvfs),
759 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_CRTIME(zfsvfs),
763 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_LINKS(zfsvfs), NULL, &links, 8);
766 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_XATTR(zfsvfs), NULL,
771 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_RDEV(zfsvfs),
776 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_FLAGS(zfsvfs),
778 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_UID(zfsvfs), NULL,
780 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_GID(zfsvfs), NULL,
782 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_PAD(zfsvfs), NULL, pad,
784 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_ZNODE_ACL(zfsvfs), NULL,
787 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_DACL_COUNT(zfsvfs), NULL,
790 SA_ADD_BULK_ATTR(sa_attrs, cnt, SA_ZPL_DACL_ACES(zfsvfs),
800 *zpp = zfs_znode_alloc(zfsvfs, db, 0, obj_type, sa_hdl);
826 int err = insmntque(vp, zfsvfs->z_vfs);
832 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj);
935 zfs_zget(zfsvfs_t *zfsvfs, uint64_t obj_num, znode_t **zpp)
948 ZFS_OBJ_HOLD_ENTER(zfsvfs, obj_num);
950 err = sa_buf_hold(zfsvfs->z_os, obj_num, NULL, &db);
952 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
963 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
993 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1045 zp = zfs_znode_alloc(zfsvfs, db, doi.doi_data_block_size,
1055 err = insmntque(vp, zfsvfs->z_vfs);
1066 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1074 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
1104 ZFS_OBJ_HOLD_ENTER(zfsvfs, obj_num);
1121 err = sa_buf_hold(zfsvfs->z_os, obj_num, NULL, &db);
1123 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1133 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1137 zfs_znode_sa_init(zfsvfs, zp, db, doi.doi_bonus_type, NULL);
1141 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_GEN(zfsvfs), NULL,
1143 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_SIZE(zfsvfs), NULL,
1145 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_LINKS(zfsvfs), NULL,
1147 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_FLAGS(zfsvfs), NULL,
1149 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_ATIME(zfsvfs), NULL,
1151 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_UID(zfsvfs), NULL,
1153 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_GID(zfsvfs), NULL,
1155 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_MODE(zfsvfs), NULL,
1160 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1168 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1192 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1208 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1216 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num);
1224 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
1225 objset_t *os = zfsvfs->z_os;
1229 ZFS_OBJ_HOLD_ENTER(zfsvfs, obj);
1236 ZFS_OBJ_HOLD_EXIT(zfsvfs, obj);
1242 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
1250 ZFS_OBJ_HOLD_ENTER(zfsvfs, z_id);
1261 ASSERT(!zfsvfs->z_issnap);
1262 if ((zfsvfs->z_vfs->vfs_flag & VFS_RDONLY) == 0) {
1263 ZFS_OBJ_HOLD_EXIT(zfsvfs, z_id);
1270 ZFS_OBJ_HOLD_EXIT(zfsvfs, z_id);
1277 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
1284 mutex_enter(&zfsvfs->z_znodes_lock);
1286 list_remove(&zfsvfs->z_all_znodes, zp);
1287 mutex_exit(&zfsvfs->z_znodes_lock);
1394 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
1412 tx = dmu_tx_create(zfsvfs->z_os);
1416 (!ISP2(zp->z_blksz) || zp->z_blksz < zfsvfs->z_max_blksz)) {
1472 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
1492 error = dmu_free_long_range(zfsvfs->z_os, zp->z_id, off, len);
1523 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
1544 error = dmu_free_long_range(zfsvfs->z_os, zp->z_id, end,
1550 tx = dmu_tx_create(zfsvfs->z_os);
1562 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_SIZE(zfsvfs),
1567 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_FLAGS(zfsvfs),
1602 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
1603 zilog_t *zilog = zfsvfs->z_log;
1610 if ((error = sa_lookup(zp->z_sa_hdl, SA_ZPL_MODE(zfsvfs), &mode,
1632 tx = dmu_tx_create(zfsvfs->z_os);
1641 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_MTIME(zfsvfs), NULL, mtime, 16);
1642 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_CTIME(zfsvfs), NULL, ctime, 16);
1643 SA_ADD_BULK_ATTR(bulk, count, SA_ZPL_FLAGS(zfsvfs),
1665 zfsvfs_t *zfsvfs;
1732 * Create root znode. Create minimal znode/vnode/zfsvfs
1742 zfsvfs = kmem_zalloc(sizeof (zfsvfs_t), KM_SLEEP);
1750 zfsvfs->z_os = os;
1751 zfsvfs->z_parent = zfsvfs;
1752 zfsvfs->z_version = version;
1753 zfsvfs->z_use_fuids = USE_FUIDS(version, os);
1754 zfsvfs->z_use_sa = USE_SA(version, os);
1755 zfsvfs->z_norm = norm;
1758 &zfsvfs->z_attr_table);
1767 zfsvfs->z_norm |= U8_TEXTPREP_TOUPPER;
1769 mutex_init(&zfsvfs->z_znodes_lock, NULL, MUTEX_DEFAULT, NULL);
1770 list_create(&zfsvfs->z_all_znodes, sizeof (znode_t),
1774 mutex_init(&zfsvfs->z_hold_mtx[i], NULL, MUTEX_DEFAULT, NULL);
1776 rootzp->z_zfsvfs = zfsvfs;
1793 error = zfs_create_share_dir(zfsvfs, tx);
1798 mutex_destroy(&zfsvfs->z_hold_mtx[i]);
1799 kmem_free(zfsvfs, sizeof (zfsvfs_t));
2174 zfsvfs_t *zfsvfs = zp->z_zfsvfs;
2183 err = zfs_obj_to_pobj(zfsvfs->z_os, zp->z_sa_hdl, zfsvfs->z_attr_table,
2193 err = zap_value_search(zfsvfs->z_os, parent, zp->z_id,
2197 err = zfs_zget(zfsvfs, parent, dzpp);