Lines Matching defs:odn

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