Lines Matching defs:blkid

169 dbuf_hash(void *os, uint64_t obj, uint8_t lvl, uint64_t blkid)
179 crc = (crc >> 8) ^ zfs_crc64_table[(crc ^ (blkid >> 0)) & 0xFF];
180 crc = (crc >> 8) ^ zfs_crc64_table[(crc ^ (blkid >> 8)) & 0xFF];
182 crc ^= (osv>>14) ^ (obj>>16) ^ (blkid>>16);
187 #define DBUF_EQUAL(dbuf, os, obj, level, blkid) \
191 (dbuf)->db_blkid == (blkid))
194 dbuf_find(objset_t *os, uint64_t obj, uint8_t level, uint64_t blkid)
197 uint64_t hv = dbuf_hash(os, obj, level, blkid);
203 if (DBUF_EQUAL(db, os, obj, level, blkid)) {
247 uint64_t blkid = db->db_blkid;
248 uint64_t hv = dbuf_hash(os, obj, level, blkid);
254 if (DBUF_EQUAL(dbf, os, obj, level, blkid)) {
417 * (i.e. it's objset, object, level and blkid fields don't change).
874 * The level n blkid is equal to the level 0 blkid divided by
877 * The level 0 blkid is offset >> datablkshift =
885 * Thus, the level n blkid is: offset /
2161 dbuf_findbp(dnode_t *dn, int level, uint64_t blkid, int fail_sparse,
2169 ASSERT(blkid != DMU_BONUS_BLKID);
2171 if (blkid == DMU_SPILL_BLKID) {
2194 (blkid > (dn->dn_phys->dn_maxblkid >> (level * epbs)))) {
2200 blkid >> epbs, fail_sparse, FALSE, NULL, parentp);
2211 (blkid & ((1ULL << epbs) - 1));
2217 blkid < dn->dn_phys->dn_nblkptr);
2222 *bpp = &dn->dn_phys->dn_blkptr[blkid];
2228 dbuf_create(dnode_t *dn, uint8_t level, uint64_t blkid,
2242 db->db_blkid = blkid;
2254 if (blkid == DMU_BONUS_BLKID) {
2264 } else if (blkid == DMU_SPILL_BLKID) {
2422 dbuf_prefetch(dnode_t *dn, int64_t level, uint64_t blkid, zio_priority_t prio,
2429 ASSERT(blkid != DMU_BONUS_BLKID);
2432 if (blkid > dn->dn_maxblkid)
2435 if (dnode_block_freed(dn, blkid))
2447 if (dn->dn_phys->dn_maxblkid < blkid << (epbs * level))
2451 level, blkid);
2467 curblkid = blkid;
2501 dn->dn_object, level, blkid);
2518 ASSERT3U(curblkid, ==, blkid);
2544 dbuf_hold_impl(dnode_t *dn, uint8_t level, uint64_t blkid,
2550 ASSERT(blkid != DMU_BONUS_BLKID);
2557 db = dbuf_find(dn->dn_objset, dn->dn_object, level, blkid);
2567 err = dbuf_findbp(dn, level, blkid, fail_sparse, &parent, &bp);
2579 db = dbuf_create(dn, level, blkid, parent, bp);
2628 ASSERT3U(db->db_blkid, ==, blkid);
2636 dbuf_hold(dnode_t *dn, uint64_t blkid, void *tag)
2638 return (dbuf_hold_level(dn, 0, blkid, tag));
2642 dbuf_hold_level(dnode_t *dn, int level, uint64_t blkid, void *tag)
2645 int err = dbuf_hold_impl(dn, level, blkid, FALSE, FALSE, tag, &db);
2697 dbuf_try_add_ref(dmu_buf_t *db_fake, objset_t *os, uint64_t obj, uint64_t blkid,
2707 found_db = dbuf_find(os, obj, 0, blkid);