Lines Matching refs:odn

892 dnode_move_impl(dnode_t *odn, dnode_t *ndn)  in dnode_move_impl()  argument
894 ASSERT(!RW_LOCK_HELD(&odn->dn_struct_rwlock)); in dnode_move_impl()
895 ASSERT(MUTEX_NOT_HELD(&odn->dn_mtx)); in dnode_move_impl()
896 ASSERT(MUTEX_NOT_HELD(&odn->dn_dbufs_mtx)); in dnode_move_impl()
899 ndn->dn_objset = odn->dn_objset; in dnode_move_impl()
900 ndn->dn_object = odn->dn_object; in dnode_move_impl()
901 ndn->dn_dbuf = odn->dn_dbuf; in dnode_move_impl()
902 ndn->dn_handle = odn->dn_handle; in dnode_move_impl()
903 ndn->dn_phys = odn->dn_phys; in dnode_move_impl()
904 ndn->dn_type = odn->dn_type; in dnode_move_impl()
905 ndn->dn_bonuslen = odn->dn_bonuslen; in dnode_move_impl()
906 ndn->dn_bonustype = odn->dn_bonustype; in dnode_move_impl()
907 ndn->dn_nblkptr = odn->dn_nblkptr; in dnode_move_impl()
908 ndn->dn_checksum = odn->dn_checksum; in dnode_move_impl()
909 ndn->dn_compress = odn->dn_compress; in dnode_move_impl()
910 ndn->dn_nlevels = odn->dn_nlevels; in dnode_move_impl()
911 ndn->dn_indblkshift = odn->dn_indblkshift; in dnode_move_impl()
912 ndn->dn_datablkshift = odn->dn_datablkshift; in dnode_move_impl()
913 ndn->dn_datablkszsec = odn->dn_datablkszsec; in dnode_move_impl()
914 ndn->dn_datablksz = odn->dn_datablksz; in dnode_move_impl()
915 ndn->dn_maxblkid = odn->dn_maxblkid; in dnode_move_impl()
916 ndn->dn_num_slots = odn->dn_num_slots; in dnode_move_impl()
917 memcpy(ndn->dn_next_type, odn->dn_next_type, in dnode_move_impl()
918 sizeof (odn->dn_next_type)); in dnode_move_impl()
919 memcpy(ndn->dn_next_nblkptr, odn->dn_next_nblkptr, in dnode_move_impl()
920 sizeof (odn->dn_next_nblkptr)); in dnode_move_impl()
921 memcpy(ndn->dn_next_nlevels, odn->dn_next_nlevels, in dnode_move_impl()
922 sizeof (odn->dn_next_nlevels)); in dnode_move_impl()
923 memcpy(ndn->dn_next_indblkshift, odn->dn_next_indblkshift, in dnode_move_impl()
924 sizeof (odn->dn_next_indblkshift)); in dnode_move_impl()
925 memcpy(ndn->dn_next_bonustype, odn->dn_next_bonustype, in dnode_move_impl()
926 sizeof (odn->dn_next_bonustype)); in dnode_move_impl()
927 memcpy(ndn->dn_rm_spillblk, odn->dn_rm_spillblk, in dnode_move_impl()
928 sizeof (odn->dn_rm_spillblk)); in dnode_move_impl()
929 memcpy(ndn->dn_next_bonuslen, odn->dn_next_bonuslen, in dnode_move_impl()
930 sizeof (odn->dn_next_bonuslen)); in dnode_move_impl()
931 memcpy(ndn->dn_next_blksz, odn->dn_next_blksz, in dnode_move_impl()
932 sizeof (odn->dn_next_blksz)); in dnode_move_impl()
933 memcpy(ndn->dn_next_maxblkid, odn->dn_next_maxblkid, in dnode_move_impl()
934 sizeof (odn->dn_next_maxblkid)); in dnode_move_impl()
937 &odn->dn_dirty_records[i]); in dnode_move_impl()
939 memcpy(ndn->dn_free_ranges, odn->dn_free_ranges, in dnode_move_impl()
940 sizeof (odn->dn_free_ranges)); in dnode_move_impl()
941 ndn->dn_allocated_txg = odn->dn_allocated_txg; in dnode_move_impl()
942 ndn->dn_free_txg = odn->dn_free_txg; in dnode_move_impl()
943 ndn->dn_assigned_txg = odn->dn_assigned_txg; in dnode_move_impl()
944 ndn->dn_dirty_txg = odn->dn_dirty_txg; in dnode_move_impl()
945 ndn->dn_dirtyctx = odn->dn_dirtyctx; in dnode_move_impl()
946 ndn->dn_dirtyctx_firstset = odn->dn_dirtyctx_firstset; in dnode_move_impl()
947 ASSERT(zfs_refcount_count(&odn->dn_tx_holds) == 0); in dnode_move_impl()
948 zfs_refcount_transfer(&ndn->dn_holds, &odn->dn_holds); in dnode_move_impl()
950 avl_swap(&ndn->dn_dbufs, &odn->dn_dbufs); in dnode_move_impl()
951 ndn->dn_dbufs_count = odn->dn_dbufs_count; in dnode_move_impl()
952 ndn->dn_bonus = odn->dn_bonus; in dnode_move_impl()
953 ndn->dn_have_spill = odn->dn_have_spill; in dnode_move_impl()
954 ndn->dn_zio = odn->dn_zio; in dnode_move_impl()
955 ndn->dn_oldused = odn->dn_oldused; in dnode_move_impl()
956 ndn->dn_oldflags = odn->dn_oldflags; in dnode_move_impl()
957 ndn->dn_olduid = odn->dn_olduid; in dnode_move_impl()
958 ndn->dn_oldgid = odn->dn_oldgid; in dnode_move_impl()
959 ndn->dn_oldprojid = odn->dn_oldprojid; in dnode_move_impl()
960 ndn->dn_newuid = odn->dn_newuid; in dnode_move_impl()
961 ndn->dn_newgid = odn->dn_newgid; in dnode_move_impl()
962 ndn->dn_newprojid = odn->dn_newprojid; in dnode_move_impl()
963 ndn->dn_id_flags = odn->dn_id_flags; in dnode_move_impl()
964 ndn->dn_storage_type = odn->dn_storage_type; in dnode_move_impl()
971 ASSERT(ndn->dn_handle->dnh_dnode == odn); in dnode_move_impl()
977 odn->dn_dbuf = NULL; in dnode_move_impl()
978 odn->dn_handle = NULL; in dnode_move_impl()
979 avl_create(&odn->dn_dbufs, dbuf_compare, sizeof (dmu_buf_impl_t), in dnode_move_impl()
981 odn->dn_dbufs_count = 0; in dnode_move_impl()
982 odn->dn_bonus = NULL; in dnode_move_impl()
983 dmu_zfetch_fini(&odn->dn_zfetch); in dnode_move_impl()
989 POINTER_INVALIDATE(&odn->dn_objset); in dnode_move_impl()
995 list_create(&odn->dn_dirty_records[i], in dnode_move_impl()
998 odn->dn_free_ranges[i] = NULL; in dnode_move_impl()
999 odn->dn_next_nlevels[i] = 0; in dnode_move_impl()
1000 odn->dn_next_indblkshift[i] = 0; in dnode_move_impl()
1001 odn->dn_next_bonustype[i] = 0; in dnode_move_impl()
1002 odn->dn_rm_spillblk[i] = 0; in dnode_move_impl()
1003 odn->dn_next_bonuslen[i] = 0; in dnode_move_impl()
1004 odn->dn_next_blksz[i] = 0; in dnode_move_impl()
1006 odn->dn_allocated_txg = 0; in dnode_move_impl()
1007 odn->dn_free_txg = 0; in dnode_move_impl()
1008 odn->dn_assigned_txg = 0; in dnode_move_impl()
1009 odn->dn_dirty_txg = 0; in dnode_move_impl()
1010 odn->dn_dirtyctx = 0; in dnode_move_impl()
1011 odn->dn_dirtyctx_firstset = NULL; in dnode_move_impl()
1012 odn->dn_have_spill = B_FALSE; in dnode_move_impl()
1013 odn->dn_zio = NULL; in dnode_move_impl()
1014 odn->dn_oldused = 0; in dnode_move_impl()
1015 odn->dn_oldflags = 0; in dnode_move_impl()
1016 odn->dn_olduid = 0; in dnode_move_impl()
1017 odn->dn_oldgid = 0; in dnode_move_impl()
1018 odn->dn_oldprojid = ZFS_DEFAULT_PROJID; in dnode_move_impl()
1019 odn->dn_newuid = 0; in dnode_move_impl()
1020 odn->dn_newgid = 0; in dnode_move_impl()
1021 odn->dn_newprojid = ZFS_DEFAULT_PROJID; in dnode_move_impl()
1022 odn->dn_id_flags = 0; in dnode_move_impl()
1023 odn->dn_storage_type = DMU_OT_NONE; in dnode_move_impl()
1029 odn->dn_moved = (uint8_t)-1; in dnode_move_impl()
1035 dnode_t *odn = buf, *ndn = newbuf; in dnode_move() local
1062 os = odn->dn_objset; in dnode_move()
1072 if (os != odn->dn_objset) { in dnode_move()
1089 if (os != odn->dn_objset) { in dnode_move()
1103 if (DMU_OBJECT_IS_SPECIAL(odn->dn_object)) { in dnode_move()
1108 ASSERT(odn->dn_dbuf != NULL); /* only "special" dnodes have no parent */ in dnode_move()
1118 if (!zrl_tryenter(&odn->dn_handle->dnh_zrlock)) { in dnode_move()
1133 if (!rw_tryenter(&odn->dn_struct_rwlock, RW_WRITER)) { in dnode_move()
1134 zrl_exit(&odn->dn_handle->dnh_zrlock); in dnode_move()
1149 refcount = zfs_refcount_count(&odn->dn_holds); in dnode_move()
1151 dbufs = DN_DBUFS_COUNT(odn); in dnode_move()
1155 DTRACE_PROBE3(dnode__move, dnode_t *, odn, int64_t, refcount, in dnode_move()
1159 rw_exit(&odn->dn_struct_rwlock); in dnode_move()
1160 zrl_exit(&odn->dn_handle->dnh_zrlock); in dnode_move()
1166 rw_exit(&odn->dn_struct_rwlock); in dnode_move()
1173 dnode_move_impl(odn, ndn); in dnode_move()
1175 list_link_replace(&odn->dn_link, &ndn->dn_link); in dnode_move()