dn->dn_bonustype = dnp->dn_bonustype;
dn->dn_bonuslen = dnp->dn_bonuslen;
dn->dn_maxblkid = dnp->dn_maxblkid;
+ dn->dn_allocated_txg = 0;
+ dn->dn_free_txg = 0;
+ dn->dn_assigned_txg = 0;
+ dn->dn_dirtyctx = DN_UNDIRTIED;
+ dn->dn_dirtyctx_firstset = NULL;
+ dn->dn_bonus = NULL;
+ dn->dn_zio = NULL;
+ dn->dn_have_spill = ((dnp->dn_flags & DNODE_FLAG_SPILL_BLKPTR) != 0);
+ dn->dn_id_flags = 0;
+
dmu_zfetch_init(&dn->dn_zfetch, dn);
ASSERT(dn->dn_phys->dn_type < DMU_OT_NUMTYPES);
uint64_t zf_alloc_fail; /* # of failed attempts to alloc strm */
} zfetch_t;
+ void zfetch_init(void);
+ void zfetch_fini(void);
+
void dmu_zfetch_init(zfetch_t *, struct dnode *);
void dmu_zfetch_rele(zfetch_t *);
+void dmu_zfetch_cons(zfetch_t *);
+void dmu_zfetch_dest(zfetch_t *);
+
void dmu_zfetch(zfetch_t *, uint64_t, uint64_t, int);