Lines Matching refs:zb

134 static void read_by_block_level(dsl_scan_t *scn, zbookmark_phys_t zb);
361 const zbookmark_phys_t *zb, dsl_scan_io_queue_t *queue);
1635 dsl_scan_check_suspend(dsl_scan_t *scn, const zbookmark_phys_t *zb) in dsl_scan_check_suspend() argument
1638 if (zb && (int64_t)zb->zb_object < 0) in dsl_scan_check_suspend()
1648 if (zb && (zb->zb_level != 0 && zb->zb_level != ZB_ROOT_LEVEL)) in dsl_scan_check_suspend()
1681 if (zb && zb->zb_level == ZB_ROOT_LEVEL) { in dsl_scan_check_suspend()
1684 (longlong_t)zb->zb_objset, in dsl_scan_check_suspend()
1685 (longlong_t)zb->zb_object, in dsl_scan_check_suspend()
1686 (longlong_t)zb->zb_level, in dsl_scan_check_suspend()
1687 (longlong_t)zb->zb_blkid); in dsl_scan_check_suspend()
1689 zb->zb_objset, 0, 0, 0); in dsl_scan_check_suspend()
1690 } else if (zb != NULL) { in dsl_scan_check_suspend()
1692 (longlong_t)zb->zb_objset, in dsl_scan_check_suspend()
1693 (longlong_t)zb->zb_object, in dsl_scan_check_suspend()
1694 (longlong_t)zb->zb_level, in dsl_scan_check_suspend()
1695 (longlong_t)zb->zb_blkid); in dsl_scan_check_suspend()
1696 scn->scn_phys.scn_bookmark = *zb; in dsl_scan_check_suspend()
1715 dsl_error_scrub_check_suspend(dsl_scan_t *scn, const zbookmark_phys_t *zb) in dsl_error_scrub_check_suspend() argument
1737 if (zb) { in dsl_error_scrub_check_suspend()
1740 (longlong_t)zb->zb_objset, in dsl_error_scrub_check_suspend()
1741 (longlong_t)zb->zb_object, in dsl_error_scrub_check_suspend()
1742 (longlong_t)zb->zb_level, in dsl_error_scrub_check_suspend()
1743 (longlong_t)zb->zb_blkid); in dsl_error_scrub_check_suspend()
1764 zbookmark_phys_t zb; in dsl_scan_zil_block() local
1781 SET_BOOKMARK(&zb, zh->zh_log.blk_cksum.zc_word[ZIL_ZC_OBJSET], in dsl_scan_zil_block()
1784 VERIFY(0 == scan_funcs[scn->scn_phys.scn_func](dp, bp, &zb)); in dsl_scan_zil_block()
1800 zbookmark_phys_t zb; in dsl_scan_zil_record() local
1816 SET_BOOKMARK(&zb, zh->zh_log.blk_cksum.zc_word[ZIL_ZC_OBJSET], in dsl_scan_zil_record()
1820 VERIFY(0 == scan_funcs[scn->scn_phys.scn_func](dp, bp, &zb)); in dsl_scan_zil_record()
1920 const zbookmark_phys_t *zb) in dsl_scan_check_prefetch_resume() argument
1926 if (zb->zb_objset != last_zb->zb_objset) in dsl_scan_check_prefetch_resume()
1928 if ((int64_t)zb->zb_object < 0) in dsl_scan_check_prefetch_resume()
1934 if (zbookmark_subtree_completed(dnp, zb, last_zb)) in dsl_scan_check_prefetch_resume()
1941 dsl_scan_prefetch(scan_prefetch_ctx_t *spc, blkptr_t *bp, zbookmark_phys_t *zb) in dsl_scan_prefetch() argument
1957 if (dsl_scan_check_prefetch_resume(spc, zb)) in dsl_scan_prefetch()
1964 spic->spic_zb = *zb; in dsl_scan_prefetch()
1990 zbookmark_phys_t zb; in dsl_scan_prefetch_dnode() local
1996 SET_BOOKMARK(&zb, objset, object, 0, 0); in dsl_scan_prefetch_dnode()
2001 zb.zb_level = BP_GET_LEVEL(&dnp->dn_blkptr[i]); in dsl_scan_prefetch_dnode()
2002 zb.zb_blkid = i; in dsl_scan_prefetch_dnode()
2003 dsl_scan_prefetch(spc, &dnp->dn_blkptr[i], &zb); in dsl_scan_prefetch_dnode()
2007 zb.zb_level = 0; in dsl_scan_prefetch_dnode()
2008 zb.zb_blkid = DMU_SPILL_BLKID; in dsl_scan_prefetch_dnode()
2009 dsl_scan_prefetch(spc, DN_SPILL_BLKPTR(dnp), &zb); in dsl_scan_prefetch_dnode()
2016 dsl_scan_prefetch_cb(zio_t *zio, const zbookmark_phys_t *zb, const blkptr_t *bp, in dsl_scan_prefetch_cb() argument
2042 SET_BOOKMARK(&czb, zb->zb_objset, zb->zb_object, in dsl_scan_prefetch_cb()
2043 zb->zb_level - 1, zb->zb_blkid * epb + i); in dsl_scan_prefetch_cb()
2055 zb->zb_objset, zb->zb_blkid * epb + i); in dsl_scan_prefetch_cb()
2061 zb->zb_objset, DMU_META_DNODE_OBJECT); in dsl_scan_prefetch_cb()
2066 &osp->os_projectused_dnode, zb->zb_objset, in dsl_scan_prefetch_cb()
2070 &osp->os_groupused_dnode, zb->zb_objset, in dsl_scan_prefetch_cb()
2073 &osp->os_userused_dnode, zb->zb_objset, in dsl_scan_prefetch_cb()
2158 const zbookmark_phys_t *zb) in dsl_scan_check_resume() argument
2164 (int64_t)zb->zb_object >= 0) { in dsl_scan_check_resume()
2169 if (zbookmark_subtree_completed(dnp, zb, in dsl_scan_check_resume()
2178 if (zbookmark_subtree_tbd(dnp, zb, in dsl_scan_check_resume()
2181 (longlong_t)zb->zb_objset, in dsl_scan_check_resume()
2182 (longlong_t)zb->zb_object, in dsl_scan_check_resume()
2183 (longlong_t)zb->zb_level, in dsl_scan_check_resume()
2184 (longlong_t)zb->zb_blkid); in dsl_scan_check_resume()
2185 memset(&scn->scn_phys.scn_bookmark, 0, sizeof (*zb)); in dsl_scan_check_resume()
2191 static void dsl_scan_visitbp(const blkptr_t *bp, const zbookmark_phys_t *zb,
2205 const zbookmark_phys_t *zb, dmu_tx_t *tx) in dsl_scan_recurse() argument
2223 spa_log_error(spa, zb, BP_GET_LOGICAL_BIRTH(bp)); in dsl_scan_recurse()
2235 ZIO_PRIORITY_SCRUB, zio_flags, &flags, zb); in dsl_scan_recurse()
2243 SET_BOOKMARK(&czb, zb->zb_objset, zb->zb_object, in dsl_scan_recurse()
2244 zb->zb_level - 1, in dsl_scan_recurse()
2245 zb->zb_blkid * epb + i); in dsl_scan_recurse()
2263 ZIO_PRIORITY_SCRUB, zio_flags, &flags, zb); in dsl_scan_recurse()
2272 cdnp, zb->zb_blkid * epb + i, tx); in dsl_scan_recurse()
2282 ZIO_PRIORITY_SCRUB, zio_flags, &flags, zb); in dsl_scan_recurse()
2319 spa_log_error(spa, zb, BP_GET_LOGICAL_BIRTH(bp)); in dsl_scan_recurse()
2356 dsl_scan_visitbp(const blkptr_t *bp, const zbookmark_phys_t *zb, in dsl_scan_visitbp() argument
2362 if (dsl_scan_check_suspend(scn, zb)) in dsl_scan_visitbp()
2365 if (dsl_scan_check_resume(scn, dnp, zb)) in dsl_scan_visitbp()
2401 if (dsl_scan_recurse(scn, ds, ostype, dnp, bp, zb, tx) != 0) in dsl_scan_visitbp()
2427 scan_funcs[scn->scn_phys.scn_func](dp, bp, zb); in dsl_scan_visitbp()
2434 zbookmark_phys_t zb; in dsl_scan_visit_rootbp() local
2437 SET_BOOKMARK(&zb, ds ? ds->ds_object : DMU_META_OBJSET, in dsl_scan_visit_rootbp()
2442 zb.zb_objset, 0, 0, 0); in dsl_scan_visit_rootbp()
2450 dsl_scan_prefetch(spc, bp, &zb); in dsl_scan_visit_rootbp()
2453 dsl_scan_visitbp(bp, &zb, NULL, ds, scn, DMU_OST_NONE, tx); in dsl_scan_visit_rootbp()
2979 zbookmark_phys_t zb = { 0 }; in dsl_scan_ddt_entry() local
3007 scan_funcs[scn->scn_phys.scn_func](scn->scn_dp, &bp, &zb); in dsl_scan_ddt_entry()
3934 name_to_bookmark(char *buf, zbookmark_phys_t *zb) in name_to_bookmark() argument
3936 zb->zb_objset = zfs_strtonum(buf, &buf); in name_to_bookmark()
3938 zb->zb_object = zfs_strtonum(buf + 1, &buf); in name_to_bookmark()
3940 zb->zb_level = (int)zfs_strtonum(buf + 1, &buf); in name_to_bookmark()
3942 zb->zb_blkid = zfs_strtonum(buf + 1, &buf); in name_to_bookmark()
3954 read_by_block_level(dsl_scan_t *scn, zbookmark_phys_t zb) in read_by_block_level() argument
3959 if (dsl_dataset_hold_obj(dp, zb.zb_objset, FTAG, &ds) != 0) in read_by_block_level()
3985 if (dnode_hold(os, zb.zb_object, FTAG, &dn) != 0) { in read_by_block_level()
3991 int error = dbuf_dnode_findbp(dn, zb.zb_level, zb.zb_blkid, &bp, NULL, in read_by_block_level()
4012 if (zb.zb_level == ZB_ZIL_LEVEL) in read_by_block_level()
4016 scan_exec_io(dp, &bp, zio_flags, &zb, NULL); in read_by_block_level()
4053 zbookmark_phys_t zb; in scrub_filesystem() local
4054 zep_to_zb(fs, zep, &zb); in scrub_filesystem()
4058 read_by_block_level(scn, zb); in scrub_filesystem()
4067 dsl_error_scrub_check_suspend(scn, &zb)) { in scrub_filesystem()
4133 zbookmark_phys_t zb; in scrub_filesystem() local
4134 zep_to_zb(snap_obj, zep, &zb); in scrub_filesystem()
4138 read_by_block_level(scn, zb); in scrub_filesystem()
4147 dsl_error_scrub_check_suspend(scn, &zb)) { in scrub_filesystem()
4213 zbookmark_phys_t *zb; in dsl_errorscrub_sync() local
4217 zb = kmem_zalloc(sizeof (zbookmark_phys_t), KM_SLEEP); in dsl_errorscrub_sync()
4222 name_to_bookmark(za->za_name, zb); in dsl_errorscrub_sync()
4227 read_by_block_level(scn, *zb); in dsl_errorscrub_sync()
4237 dsl_error_scrub_check_suspend(scn, zb)) { in dsl_errorscrub_sync()
4248 kmem_free(zb, sizeof (*zb)); in dsl_errorscrub_sync()
4307 kmem_free(zb, sizeof (*zb)); in dsl_errorscrub_sync()
4685 zfs_blkstat_t *zb = &zab->zab_type[l][t]; in count_block() local
4688 zb->zb_count++; in count_block()
4689 zb->zb_asize += BP_GET_ASIZE(bp); in count_block()
4690 zb->zb_lsize += BP_GET_LSIZE(bp); in count_block()
4691 zb->zb_psize += BP_GET_PSIZE(bp); in count_block()
4692 zb->zb_gangs += BP_COUNT_GANG(bp); in count_block()
4698 zb->zb_ditto_2_of_2_samevdev++; in count_block()
4708 zb->zb_ditto_2_of_3_samevdev++; in count_block()
4710 zb->zb_ditto_3_of_3_samevdev++; in count_block()
4745 int zio_flags, const zbookmark_phys_t *zb) in scan_io_queue_insert() argument
4754 sio->sio_zb = *zb; in scan_io_queue_insert()
4767 const zbookmark_phys_t *zb) in dsl_scan_enqueue() argument
4778 scan_exec_io(dp, bp, zio_flags, zb, NULL); in dsl_scan_enqueue()
4795 i, zio_flags, zb); in dsl_scan_enqueue()
4802 const blkptr_t *bp, const zbookmark_phys_t *zb) in dsl_scan_scrub_cb() argument
4832 if (zb->zb_level == ZB_ZIL_LEVEL) in dsl_scan_scrub_cb()
4853 dsl_scan_enqueue(dp, bp, zio_flags, zb); in dsl_scan_scrub_cb()
4907 const zbookmark_phys_t *zb, dsl_scan_io_queue_t *queue) in scan_exec_io() argument
4938 queue, ZIO_PRIORITY_SCRUB, zio_flags, zb)); in scan_exec_io()