Lines Matching refs:segs
904 spa_vdev_copy_segment(vdev_t *vd, range_tree_t *segs, in spa_vdev_copy_segment() argument
913 uint64_t start = range_tree_min(segs); in spa_vdev_copy_segment()
917 uint64_t size = range_tree_span(segs); in spa_vdev_copy_segment()
918 if (range_tree_span(segs) > maxalloc) { in spa_vdev_copy_segment()
926 rs_set_start(&search, segs, start + maxalloc); in spa_vdev_copy_segment()
927 rs_set_end(&search, segs, start + maxalloc); in spa_vdev_copy_segment()
928 (void) zfs_btree_find(&segs->rt_root, &search, &where); in spa_vdev_copy_segment()
929 range_seg_t *rs = zfs_btree_prev(&segs->rt_root, &where, in spa_vdev_copy_segment()
932 size = rs_get_end(rs, segs) - start; in spa_vdev_copy_segment()
968 range_seg_t *rs = zfs_btree_first(&segs->rt_root, &where); in spa_vdev_copy_segment()
969 ASSERT3U(rs_get_start(rs, segs), ==, start); in spa_vdev_copy_segment()
970 uint64_t prev_seg_end = rs_get_end(rs, segs); in spa_vdev_copy_segment()
971 while ((rs = zfs_btree_next(&segs->rt_root, &where, &where)) != NULL) { in spa_vdev_copy_segment()
972 if (rs_get_start(rs, segs) >= start + size) { in spa_vdev_copy_segment()
977 rs_get_start(rs, segs) - prev_seg_end); in spa_vdev_copy_segment()
979 prev_seg_end = rs_get_end(rs, segs); in spa_vdev_copy_segment()
984 range_tree_clear(segs, start, size); in spa_vdev_copy_segment()
1225 range_tree_t *segs = range_tree_create(NULL, RANGE_SEG64, NULL, 0, 0); in spa_vdev_copy_impl() local
1235 if (range_tree_is_empty(segs)) { in spa_vdev_copy_impl()
1240 if (rs_get_start(rs, rt) - range_tree_max(segs) > in spa_vdev_copy_impl()
1247 } else if (rs_get_end(rs, rt) - range_tree_min(segs) > in spa_vdev_copy_impl()
1261 range_tree_add(segs, rs_get_start(rs, rt), seg_length); in spa_vdev_copy_impl()
1266 if (range_tree_is_empty(segs)) { in spa_vdev_copy_impl()
1268 range_tree_destroy(segs); in spa_vdev_copy_impl()
1277 svr->svr_max_offset_to_sync[txg & TXG_MASK] = range_tree_max(segs); in spa_vdev_copy_impl()
1283 svr->svr_bytes_done[txg & TXG_MASK] += range_tree_space(segs); in spa_vdev_copy_impl()
1290 while (!range_tree_is_empty(segs)) { in spa_vdev_copy_impl()
1292 segs, thismax, txg, vca, &zal); in spa_vdev_copy_impl()
1307 MIN(range_tree_span(segs), thismax); in spa_vdev_copy_impl()
1327 range_tree_destroy(segs); in spa_vdev_copy_impl()