blkptr_t
static int zio_read(const spa_t *spa, const blkptr_t *bp, void *buf);
static int zio_read_impl(const spa_t *spa, const blkptr_t *bp, void *buf,
static int vdev_indirect_read(vdev_t *, const blkptr_t *, void *, off_t,
static int vdev_mirror_read(vdev_t *, const blkptr_t *, void *, off_t, size_t);
blkptr_t bp;
ASSERT(IS_P2ALIGNED(size, sizeof(blkptr_t)));
return ((size - sizeof(zio_eck_t)) / sizeof(blkptr_t));
zio_read_gang(const spa_t *spa, const blkptr_t *bp, void *buf)
blkptr_t gbh_bp;
vdev_read_phys(vdev_t *vdev, const blkptr_t *bp, void *buf,
blkptr_t *gbp = &((blkptr_t *)gbuf)[i];
zio_read_impl(const spa_t *spa, const blkptr_t *bp, void *buf, bool print)
zio_read(const spa_t *spa, const blkptr_t *bp, void *buf)
const blkptr_t *indbp;
blkptr_t bp;
indbp = (const blkptr_t *) dnode_cache_buf;
blkptr_t *bp = DN_SPILL_BLKPTR(dn);
blkptr_t *bp;
vdev_indirect_read(vdev_t *vdev, const blkptr_t *bp, void *buf,
zio.io_bp = (blkptr_t *)bp;
vdev_disk_read(vdev_t *vdev, const blkptr_t *bp, void *buf,
vdev_missing_read(vdev_t *vdev __unused, const blkptr_t *bp __unused,
vdev_mirror_read(vdev_t *vdev, const blkptr_t *bp, void *buf,
vdev_replacing_read(vdev_t *vdev, const blkptr_t *bp, void *buf,
decode_embedded_bp_compressed(const blkptr_t *bp, void *buf)
(((dnp)->dn_nblkptr - 1) * sizeof (blkptr_t))))
blkptr_t dn_blkptr[1+DN_OLD_MAX_BONUSLEN/sizeof (blkptr_t)];
blkptr_t __dn_ignore1;
blkptr_t __dn_ignore2;
sizeof (blkptr_t)];
blkptr_t dn_spill;
#define DN_SPILL_BLKPTR(dnp) (blkptr_t *)((char *)(dnp) + \
blkptr_t zh_log; /* log chain */
blkptr_t ds_bp;
typedef int vdev_read_t(struct vdev *, const blkptr_t *, void *, off_t, size_t);
blkptr_t *io_bp;
extern void decode_embedded_bp_compressed(const blkptr_t *, void *);
blkptr_t ub_rootbp; /* MOS objset_phys_t */
raidz_checksum_verify(const spa_t *spa, const blkptr_t *bp, void *data,
vdev_raidz_combrec(const spa_t *spa, raidz_map_t *rm, const blkptr_t *bp,
vdev_raidz_read(vdev_t *vd, const blkptr_t *bp, void *data,
zio_checksum_gang_verifier(zio_cksum_t *zcp, const blkptr_t *bp)
zio_checksum_verify(const spa_t *spa, const blkptr_t *bp, void *data)
#define BLKPTR_PER_INDIR (MAXBLOCKSIZE / sizeof(blkptr_t))
blkptr_t *bp, *pbp;
pbp = (blkptr_t *)
&c->inddir[level][iblkid * sizeof(blkptr_t)];
blkptr_t *
return ((blkptr_t *)&c->inddir[0][l1id * sizeof(blkptr_t)]);
blkptr_t *bp;
objset_root_blkptr_copy(const zfs_objset_t *os, blkptr_t *bp)
memcpy(bp, &os->osbp, sizeof(blkptr_t));
blkptr_t osbp; /* set in objset_write() */
blkptr_t *bp)
uint64_t fill, const void *data, off_t sz, off_t loc, blkptr_t *bp)
blkptr_set(blkptr_t *bp, off_t off, off_t size, uint8_t dntype, uint8_t level,
void objset_root_blkptr_copy(const zfs_objset_t *, blkptr_t *);
blkptr_t *bp);
uint64_t fill, const void *data, off_t sz, off_t loc, blkptr_t *bp);
blkptr_t *dnode_cursor_next(zfs_opt_t *, struct dnode_cursor *, off_t);