Lines Matching defs:dnp
285 dnode_byteswap(dnode_phys_t *dnp)
287 uint64_t *buf64 = (void*)&dnp->dn_blkptr;
290 if (dnp->dn_type == DMU_OT_NONE) {
291 bzero(dnp, sizeof (dnode_phys_t));
295 dnp->dn_datablkszsec = BSWAP_16(dnp->dn_datablkszsec);
296 dnp->dn_bonuslen = BSWAP_16(dnp->dn_bonuslen);
297 dnp->dn_maxblkid = BSWAP_64(dnp->dn_maxblkid);
298 dnp->dn_used = BSWAP_64(dnp->dn_used);
304 ASSERT(dnp->dn_indblkshift <= SPA_MAXBLOCKSHIFT);
305 ASSERT(dnp->dn_nblkptr <= DN_MAX_NBLKPTR);
306 for (i = 0; i < dnp->dn_nblkptr * sizeof (blkptr_t)/8; i++)
314 if (dnp->dn_bonuslen != 0) {
322 int off = (dnp->dn_nblkptr-1) * sizeof (blkptr_t);
324 ASSERT(DMU_OT_IS_VALID(dnp->dn_bonustype));
326 DMU_OT_BYTESWAP(dnp->dn_bonustype);
327 dmu_ot_byteswap[byteswap].ob_func(dnp->dn_bonus + off, len);
331 if (dnp->dn_flags & DNODE_FLAG_SPILL_BLKPTR)
332 byteswap_uint64_array(&dnp->dn_spill, sizeof (blkptr_t));
404 dnode_create(objset_t *os, dnode_phys_t *dnp, dmu_buf_impl_t *db,
420 dn->dn_phys = dnp;
422 if (dnp->dn_datablkszsec) {
423 dnode_setdblksz(dn, dnp->dn_datablkszsec << SPA_MINBLOCKSHIFT);
429 dn->dn_indblkshift = dnp->dn_indblkshift;
430 dn->dn_nlevels = dnp->dn_nlevels;
431 dn->dn_type = dnp->dn_type;
432 dn->dn_nblkptr = dnp->dn_nblkptr;
433 dn->dn_checksum = dnp->dn_checksum;
434 dn->dn_compress = dnp->dn_compress;
435 dn->dn_bonustype = dnp->dn_bonustype;
436 dn->dn_bonuslen = dnp->dn_bonuslen;
437 dn->dn_maxblkid = dnp->dn_maxblkid;
438 dn->dn_have_spill = ((dnp->dn_flags & DNODE_FLAG_SPILL_BLKPTR) != 0);
1006 dnode_special_open(objset_t *os, dnode_phys_t *dnp, uint64_t object,
1011 dn = dnode_create(os, dnp, NULL, object, dnh);
1063 void *tag, dnode_t **dnp)
1096 *dnp = dn;
1191 *dnp = dn;
1199 dnode_hold(objset_t *os, uint64_t object, void *tag, dnode_t **dnp)
1201 return (dnode_hold_impl(os, object, DNODE_MUST_BE_ALLOCATED, tag, dnp));
1788 dprintf_dnode(dn, "dn=%p dnp=%p used=%llu delta=%lld\n",
1907 dnode_phys_t *dnp = data;
1913 if ((dnp[i].dn_type == DMU_OT_NONE) == hole)